0% encontró este documento útil (0 votos)
216 vistas66 páginas

Sistema Memoria

El documento describe el sistema de memoria de un computador. Explica que existen múltiples tecnologías de memoria organizadas en una jerarquía para almacenar información de manera temporal y permanente. Detalla conceptos clave como capacidad, unidad de transferencia, tiempo de acceso, ciclo y tasa de transferencia. También describe los diferentes tipos de memorias como RAM, ROM y las operaciones de lectura y escritura.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
216 vistas66 páginas

Sistema Memoria

El documento describe el sistema de memoria de un computador. Explica que existen múltiples tecnologías de memoria organizadas en una jerarquía para almacenar información de manera temporal y permanente. Detalla conceptos clave como capacidad, unidad de transferencia, tiempo de acceso, ciclo y tasa de transferencia. También describe los diferentes tipos de memorias como RAM, ROM y las operaciones de lectura y escritura.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd

EL SISTEMA DE MEMORIA

EL SISTEMA DE MEMORIA

SON TODOS LOS ELEMENTOS


CAPACES DE ALMACENAR
INFORMACIÓN

1
0 INDICE
1 Introducción.
2 Operaciones de una memoria.
3 Celdas de memoria.
4 Conceptos básicos sobre las memorias.
EL SISTEMA DE MEMORIA

5 Jerarquías de memorias: ejemplos.


6 Memoria Principal.
7 Memorias RAM estáticas : SRAM.
8 Memorias RAM dinámicas : DRAM.
9 Memorias de lectura frecuente : RMM.
10 Módulos de memoria.
11 Memorias direccionables por contenido : CAM.
12 Memorias Cache.

2
1 INTRODUCCIÓN
⇒ No existe ninguna tecnología que satisfaga todos los requerimientos de
almacenamiento en un sistema computador. Se utilizan múltiples tecnologías.
⇒ Se utiliza una jerarquía de subsistemas de memoria, para lograr un compromiso
adecuado entre prestaciones del sistema y su coste.
EL SISTEMA DE MEMORIA

⇒ La Memoria está distribuida por todo el sistema:


♦ Memoria Principal : contiene instrucciones y datos durante la ejecución.
Es rápida y volátil.
♦ Memoria Secundaria : contiene la información de forma permanente.
Es menos rápida y no volátil.
♦ Memoria ligada a los Periféricos: permite intercambiar información con
el mundo exterior.

3
2 OPERACIONES DE UNA MEMORIA
⇒ LECTURA DE MEMORIA : Se saca una copia del contenido.
Todas las memorias pueden ser leídas.

⇒ ESCRITURA EN MEMORIA : Se reemplaza el contenido de una posición.


EL SISTEMA DE MEMORIA

Diversas variantes:
♦ Múltiples escrituras normales : RAM, Disco
♦ Sólo se escribe 1 vez y es inalterable : ROM, PROM
♦ Múltiples escrituras en un proceso especial : EPROM, FLASH

4
3 CELDAS DE MEMORIA
Una celda de memoria es todo dispositivo físico que puede almacenar 1 bit.
⇒ TIPOS DE CELDAS :
♦ Celdas de lectura no destructiva.
♦ Celdas de lectura destructiva.
EL SISTEMA DE MEMORIA

♦ Celdas no volátiles.
♦ Celdas volátiles:
Estáticas : biestable.
Dinámicas : condensador.
♦ Celdas permanentes.
⇒ Todo dispositivo de almacenamiento consta de tres elementos:
 El Medio o Soporte de almacenamiento.

 Un Mecanismo de Direccionamiento: selecciona una posición.

 El Transductor: permite leer/escribir una posición determinada (sensor/actuador).

5
4 CONCEPTOS BÁSICOS SOBRE LAS MEMORIAS
4.1 CAPACIDAD:
⇒ Cantidad de información que puede almacenar una memoria.
Memoria Principal: se mide en Palabras de Memoria.
Memoria Secundaria: se mide en Bytes.
EL SISTEMA DE MEMORIA

1 bit 1 MB = 1024 KB = 220 bits


1 nibble = 4 bits 1 GB = 1024 MB = 230 bits
1 byte = 1 octeto = 8 bits 1 TB = 1024 GB = 240 bits
1 KB = 1024 bits = 210 bits

4.2 UNIDAD DE TRANSFERENCIA:


Igual al nº de líneas del bus de datos.
⇒ En la Memoria Principal existen tres conceptos relacionados:
♦ PALABRA DE MEMORIA : es la unidad natural de medida.
♦ UNIDAD DIRECCIONABLE : se identifica por una dirección.
♦ UNIDAD DE TRANSFERENCIA : nº de bits leídos ó escritos de una vez.
⇒ En la Memoria Secundaria : la unidad es el Byte o el Bloque de N Bytes (Ráfaga).

6
4 CONCEPTOS BÁSICOS SOBRE LAS MEMORIAS cont.
4.3 MÉTODOS PARA LOCALIZAR UNA INFORMACIÓN :
C1: MEMORIAS DE ACCESO ALEATORIO o RAM: memoria principal.
Direccionamiento cableado de todas las posiciones.
El acceso a cualquier posición es directo y en un tiempo fijo.
EL SISTEMA DE MEMORIA

C2: MEMORIAS DE ACCESO SECUENCIAL o SAM:


Hay que pasar por las posiciones intermedias para llegar a destino.
El tiempo de acceso varía según las posiciones inicial y final.
♦ MEMORIAS DE ACCESO DIRECTO: discos.
Tienen un direccionamiento basado en la posición física de la información.
A partir de esta dirección se accede a un bloque o sector de información.
Dentro de cada bloque la búsqueda es secuencial.
♦ MEMORIAS DE ACCESO SERIE: cintas.
C3: MEMORIAS DIRECCIONABLES POR CONTENIDO o CAM:
Se llaman Memorias Asociativas.

7
4 CONCEPTOS BÁSICOS SOBRE LAS MEMORIAS cont.
4.4 TIEMPO DE ACCESO A LA MEMORIA TA :
⇒ [Link]: Es el intervalo de tiempo desde que se presenta una dirección a la
memoria, en el bus de direcciones, hasta que el dato ha sido memorizado o está
disponible en el bus de datos para su uso.
EL SISTEMA DE MEMORIA

⇒ [Link]-RAM: Es el intervalo de tiempo para posicionar el transductor en la


posición deseada. Este tiempo es variable y depende de las posiciones.
Muchas veces se llama Tiempo de Latencia.
Una vez posicionado, el transductor recorre secuencialmente el bloque de datos
(Tiempo de Seek).
4.5 TIEMPO DE CICLO DE LA MEMORIA TC :
⇒ Es el tiempo mínimo desde el inicio de una operación en memoria hasta el instante en
que puede iniciarse la siguiente operación en memoria. Este tiempo TC determina el
nº de accesos/unidad de tiempo.
En [Link] TC = TA + tiempo adicional ( en segundos )

8
4 CONCEPTOS BÁSICOS SOBRE LAS MEMORIAS cont.
4.6 TASA O FLUJO DE TRANSFERENCIA ( bit rate o bandwidth ):
Es la cantidad de información transferida en la unidad de tiempo, medida en bits/seg.
⇒ [Link]  R = 1 Dato/Ciclo de memoria
⇒ [Link]-RAM : en valores promedios  TM = TA + N/R
EL SISTEMA DE MEMORIA

R = tasa de transferencia en bits/seg N = nº de bits a transferir


TM = tiempo promedio en R/W N bits TA = tiempo de acceso promedio

4.7 TECNOLOGÍAS DE LAS MEMORIAS :


Muy variadas:
⇒ MEM. Semiconductoras con tecnología Bipolar o MOS.
Se utilizan chips autosuficientes.
⇒ MEM. de Superficie magnética: discos, cintas.
⇒ MEM. de Superficie óptica: CD-ROM.
⇒ MEM. de Superficie magneto-óptica.

9
4 CONCEPTOS BÁSICOS SOBRE LAS MEMORIAS cont.
4.8 EJEMPLOS

Símbolo Definición Intel 8088 Intel 8086 PowerPC 601

w Tamaño de la palabra 16 bits 16 bits 64 bits


EL SISTEMA DE MEMORIA

m Dirección de memoria 20 bits 20 bits 32 bits

s Unidad direccionable 8 bits 8 bits 8 bits

d Tamaño bus datos 8 bits 16 bits 64 bits

Capacidad en palabras de
2m 220 palabras 220 palabras 232 palabras
tamaño ‘s’

2mx s Capacidad en bits 220 X 8 bits 220 X 8 bits 232 X 8 bits

10
5 JERARQUÍA DE MEMORIAS
⇒ Los parámetros fundamentales que caracterizan los distintos tipos de memorias son:
El Coste, La Capacidad y La Tasa de transferencia.
⇒ La memoria utilizada no debería provocar estados de espera al procesador.
⇒ La configuración ideal: memoria rápida, gran capacidad y poco coste.
EL SISTEMA DE MEMORIA

⇒ Se utiliza una Jerarquía de Memorias.

Coste
Tasa
Nº Accesos

Capacidad
T. Acceso

11
5 JERARQUÍA DE MEMORIAS cont.

Componente CPU Memoria Memoria Memoria


Cache Cinta
Principal Disco
Rg
EL SISTEMA DE MEMORIA

Tipo Acceso Aleatorio Aleatorio Aleatorio Directo Secuencial

Capacidad 64–1024 B 8–512 KB 8–64 MB 1–10 GB 1 TB

Tiempo Acceso 1–10 ns 20 ns 50 ns 10 ms 10 ms–10 s

Tamaño bloque 1 palabra 16 palabras 16 palabras 4 KB 4 KB


Reloj
Tasa Transf. 8 MB/s 1 MB/s 1 MB/s 1 MB/s
Sistema

Coste/MB Alto 500 $ 30 $ 0.25 $ 0.02 $

♦ Durante la ejecución de un programa la información pasa continuamente de un nivel


a otro de forma transparente al usuario.

12
6 MEMORIA PRINCIPAL
El esquema de conexión es :
D a ta b u s A d d re s s b u s

C P U M a in m e m o r y
m s A d d re s s

m
M A R A – A 0
0 m – 1
EL SISTEMA DE MEMORIA

w 1
d D 0
– D d – 1
M B R 2

w 3
R / W
R e g is t e r
f ile 2 m
– 1
R E Q U E S T

C O M P L E T E
ACKNOWLESS

C o n t r o l s ig n a l s

Se organiza por palabras de longitud fija ( s ) , que tienen asignada una dirección.
La MP. es una memoria RAM formada por chips semiconductores autosuficientes.
En un ciclo de memoria se transfiere una palabra ( d ) entre la MP. y la CPU.

13
6 MEMORIA PRINCIPAL cont.
6.1 CHIPS DE MEMORIA
⇒ La interconexión de un chip de memoria se realiza a través de sus patillas:
♦ m patillas para el bus de direcciones: se podrán direccionar 2m palabras.
♦ s patillas para el bus de datos: en cada acceso se trabajará con s bits.
♦ R/W* (Read/ Write): indica el tipo de operación a realizar.
EL SISTEMA DE MEMORIA

Existen chips con WE (Write Enable) para escritura y OE (Output Enable) para lectura.

♦ CS (Chip Select) o CE (Chip Enable).


♦ VCC : Alimentación del chip.
♦ VSS : Conexión a tierra.
Select m

DataIn celda
DataOut

R/W

14
6 MEMORIA PRINCIPAL cont.
6.2 ORGANIZACIÓN BÁSICA DE UN CHIP DE MP.
Las celdas de memoria se organizan como una matriz de de pxs bits.
2– 4
decoder D D D D D D D D
Líneas de palabra
EL SISTEMA DE MEMORIA

A1
D D D D D D D D
A0

D D D D D D D D
Líneas de bit

D D D D D D D D

CS
R/W
Transductores
Buffers

d0 d1 d2 d3 d4 d5 d6 d7

Bus Datos

15
6 MEMORIA PRINCIPAL cont.
⇒ Para el correcto funcionamiento de un chip es necesario incorporar una circuitería
adicional, como son descodificadores, multiplexores, transductores, buffers, etc.
⇒ El transductor está unido al medio de almacenamiento.
⇒ En un chip de memoria hay dos tipos de palabra:
 Palabra Física
EL SISTEMA DE MEMORIA

 Palabra Lógica

⇒ Parámetros determinantes:
♦ Nº de bits por chip: en Mb.
♦ Tiempo de acceso: en ns.
♦ Disipación de potencia: en mW/bit
♦ Coste: en €/Mb

16
6 MEMORIA PRINCIPAL cont.
6.2.1 ORGANIZACIÓN EN 2 DIMENSIONES.
Palabra Física = Palabra Lógica ; Organización interna = Estructura lógica lineal
⇒ Un chip de 2m palabras de s bits cada una sería:

← →
EL SISTEMA DE MEMORIA

s bits

0
1 Se utiliza en memorias de
capacidad reducida.
Gran rapidez de acceso.
Rg
m Dir m
Descodificador lineal.
Todos los bits están en un chip.
Bus Dir.

m-1
Se utilizan descodificadores en
TRD TRD TRD TRD TRD árbol para abaratar.

L/E
s
CS
Bus Datos

17
6 MEMORIA PRINCIPAL cont.
6.2.2 ORGANIZACIÓN EN 2 ½ DIMENSIONES.
Normalmente el nº de palabras de un chip >> nº bits de una palabra
Los bits de dirección m se dividen en dos partes : m = x + y
2y palabras lógicas de s bits

←s→ ←s→ ←s→


EL SISTEMA DE MEMORIA

⇒ Chip de 2m x s bits
0 x selecciona la palabra física
1
y selecciona la palabra lógica
x
s = 1 ó 4 ó 8 bits
m Rg

Bus Dir.

y
TRANSD TRANSD TRANSD

m-1 s s s

L/E
s
CS
Bus Datos

18
6 MEMORIA PRINCIPAL cont.
6.2.3 ORGANIZACIÓN EN 3 DIMENSIONES.
Una palabra de s bits se guarda en s planos y dentro de cada plano se utiliza una
organización 2 ½ D.
EL SISTEMA DE MEMORIA

Chip de 214 x 4 bits


Row address: 256 m = 14
A0– A7 8 – 256 4 256 × 64
row ce ll arrays x=8 ; y=6
8 decoder
Utiliza 4 matrices

64 each

Column address: 6
4 64 –1 muxes
A8– A13 4 1– 64 demuxes

R/W
4
CS
Bus Datos
19
6 MEMORIA PRINCIPAL cont.
6.3 TIPOS DE CELDAS DE MP.
⇒ Direccionamiento cableado y acceso aleatorio.
A) DE LECTURA Y ESCRITURA NORMAL: RAM : volátiles
(Random Access Memory)
EL SISTEMA DE MEMORIA

♦ Estáticas : tecnologías bipolar y MOS.


♦ Dinámicas : necesitan refrescos, tecnología MOS.
B) DE LECTURA FRECUENTE : RMM : no volátiles
(Read Mostly Memory)
♦ No programables : ROM
♦ Programables :
 1 vez : PROM
 Varias veces:
Off-Line: Borrado total con rayos UVA.
On-Line: Borrado eléctricamente por byte o por bloque.

20
7 MEMORIAS RAM ESTÁTICAS : SRAM
⇒ La celda básica se basa en un biestable o flip-flop.
Son fáciles de conectar y ampliar.
A) CELDAS BIPOLARES:
Se utilizan transistores bipolares de unión p-n.
Densidad de bits no muy alta (64KB). Tiempo de acceso muy pequeño.
EL SISTEMA DE MEMORIA

Son las más caras.


Utiliza una organización 2D.

B) CELDAS MOS :
Se utilizan transistores MOS : PMOS, CMOS, VMOS, HMOS,...
La densidad de bits es mayor (16Mx32 b). Disipan menos potencia.
Fáciles de fabricar y tienen menor coste.
Tiempo de acceso más elevado.
Utilizan organizaciones 2 ½ D y 3 D.

21
7 MEMORIAS RAM ESTÁTICAS : SRAM cont.
7.1 TEMPORIZACIÓN DE LAS MEMORIAS SRAM
En las hojas de especificación de los fabricantes aparecen las restricciones de
temporización para cada tipo de chip.
Se debe ajustar la temporización del Bus para el funcionamiento correcto del chip.
A) Tiempo de Ciclo típico para una lectura en una SRAM
EL SISTEMA DE MEMORIA

Memory
address

Read/write

CS

Data Datos válidos

TAA
TRC

22
7 MEMORIAS RAM ESTÁTICAS : SRAM cont.
B) Tiempo de Ciclo típico para una escritura en una SRAM

Memory
address
EL SISTEMA DE MEMORIA

Read/write

CS

Data
Datos válidos

Tw
Twc

23
7 MEMORIAS RAM ESTÁTICAS : SRAM cont.
7.2 MAPA DE MEMORIA PRINCIPAL DE UN SISTEMA
Es el espacio de posiciones que puede direccionar un computador y viene determinado
por el ancho m del bus de direcciones. Cada posición tiene s bits de datos.
⇒ La implementación física del mapa de memoria se realiza con uno o varios chips de
memoria. Existen diferentes configuraciones de chips de memoria: zKx1, zKx4, zKx8,
EL SISTEMA DE MEMORIA

zKx16, zKx32, zMx1, zMx4, zMx8,zMx16, zMx32, etc. donde z es un múltiplo de 2.


7.2.1 INCREMENTAR EL Nº DE BITS POR PALABRA:
⇒ Memoria de 256 palabras x 12 bits a partir de chips de 256x4 bits :
R/W*
DES cs

CS R/W* CS R/W* CS R/W*


8 8 8
AD AD AD
SRAM SRAM SRAM
256x4 256x4 256x4
m D D D

4 4 4
Bus 12 Bus
Dir Datos

24
7 MEMORIAS RAM ESTÁTICAS : SRAM cont.
7.2.2 INCREMENTAR EL Nº DE PALABRAS :
⇒ Memoria de 1024 palabras x 4 bits a partir de chips de 256x4 bits:

2
EL SISTEMA DE MEMORIA

EN DESCODIFICADOR
SELECTOR 0 1 2 3

csi

R/W*

CS R/W* CS R/W* CS R/W* CS R/W*


8 8 8 8
AD AD AD AD
SRAM SRAM SRAM SRAM
256x4 256x4 256x4 256x4
m D D D D

4 4 4 4
Bus
Dir 4
Bus Datos

25
7 MEMORIAS RAM ESTÁTICAS : SRAM cont.
7.2.3 INCREMENTAR EL Nº DE PALABRAS Y EL Nº DE BITS POR PALABRA :
⇒ Memoria de 1024 palabras x 8 bits a partir de chips de 256x4 bits :

2
DESCODIFICADOR
EN
EL SISTEMA DE MEMORIA

0 1 2 3
SELECTOR
csi
R/W*
CS R/W*
8 CS R/W*
8
CS R/W* CS R/W*

AD AD 8 AD
8
AD
SRAM SRAM SRAM SRAM
256x4 256x4 256x4 256x4
D D D D

4 4

CS R/W* CS R/W* CS R/W* CS R/W* 8


8 AD 8 8 AD 8 AD
AD
m SRAM SRAM SRAM SRAM
256x4 256x4 256x4 256x4
D D D D

4 4
Bus
Dir
Bus Datos
26
7 MEMORIAS RAM ESTÁTICAS : SRAM cont.
7.2.4 EJEMPLO :
Obtener el Mapa de Memoria y el Diagrama de Conexiones de la memoria de un compu-
tador que puede direccionar 1Mpalabra x 16 bits y tiene instaladas 128 Kpalabras,
mediante chips de 64Kx1 bits.
(1) Debemos obtener el número de bits del bus de direcciones :
EL SISTEMA DE MEMORIA

Como puede direccionar 1Mpalabra, vemos que el bus es de 20 bits (1M = 220 ).
(2) Averiguar el número de bits que se necesitan para direccionar el chip que vamos a
emplear :
Al ser el chip de 64Kpalabras, necesitaremos 16 bits (64K=216 ). Los bits que em-
plearemos para direccionar el chip son los de menor peso, luego en este caso :
A15 A14 .. A1 A0.
(3) Calcular el número de chips que necesitamos :
Como la palabra es de 16 bits necesitamos 16 chips en paralelo para obtener una
palabra (16 bits). Con estos 16 chips tenemos 64Kx16 palabras, por lo que nos faltan
otras 64Kx16 palabras más (16 chips ).
Por tanto, necesitaremos 32 chips de 64Kx1 bits para instalar 128Kx16 palabras.

27
7 MEMORIAS RAM ESTÁTICAS : SRAM cont.
(4) Obtener el nº de bits del bus de direcciones que permita seleccionar los chips:
EL SISTEMA DE MEMORIA

Fila

28
7 MEMORIAS RAM ESTÁTICAS : SRAM cont.
(5) Dibujar el diagrama de conexiones de la memoria junto con la lógica de selección :
EL SISTEMA DE MEMORIA

29
8 MEMORIAS RAM DINÁMICAS : DRAM
Utilizan diversas variantes de transistores con tecnología MOS.
⇒ La celda básica se basa en un condensador.
Operación de Lectura = detectar la presencia de carga en el condensador
⇒ Los condensadores se descargan con el tiempo:
Corriente de fuga de carga a tierra.
EL SISTEMA DE MEMORIA

Un transistor en estado de corte consume energía.


♦ Se necesita un REFRESCO DE TODA LA MEMORIA, es decir, restaurar la carga de
cada condensador periódicamente ( de 2 a 10 ms ).
⇒ El proceso de lectura es DESTRUCTIVO:
Las celdas leídas deben ser restauradas a su valor previo.
Cada lectura debe ir seguida de una escritura en la misma dirección.
♦ Este proceso es automático y va incorporado en los chips y se llama PRECARGA
AUTOMÁTICA.

30
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
8.1 ORGANIZACIÓN DE UN CHIP DE DRAM
1Mx1 bits
Organización en 2½D y 3D
Row latches and decoder
1024 Las líneas de dirección están
EL SISTEMA DE MEMORIA

1024 × 1024 cell array multiplexadas en m/2 líneas.

RAS* almacena la dir. de fila


CAS* almacena la dir. de columna
10 1024
A0– A9 Control 1024 sense/write amplifiers
and column latches
R AS Control
logic 1024
CAS 10
10 column address latches,
R/ W 1– 1024 muxes and demuxes

d d
o i

31
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
⇒ Se coloca la dirección de la Fila y se activa RAS*:
Se cargan los latches de dirección de Fila.
Automáticamente se inicia una lectura de todos los bits de dicha Fila :
todas las celdas son leídas y cargadas en los latches de columna.
⇒ Se coloca la dirección de la Columna y se activa CAS*:
EL SISTEMA DE MEMORIA

Se cargan los latches de dirección de Columna :


Se selecciona la palabra lógica ( dato ).
⇒ Si es una lectura el dato se transfiere de los latches de columna a los buffers de salida.
Si es una escritura el dato del buffer de entrada se carga en los latches de columna.
⇒ Todos los bits de los latches de columna se transfieren a la Fila correspondiente.
⇒ La selección de una línea de palabra provoca que todas las celdas de la Fila sean
leídas internamente y después restauradas dando lugar al proceso llamado
PRECARGA AUTOMÁTICA.

32
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
⇒ Para REFRESCAR toda la memoria periódicamente ( de 2 a 10 ms ) basta con
direccionar cada Fila de celdas periódicamente mediante un contador y activar RAS*.
Se necesitan Ciclos de Refresco adicionales que consumen un pequeño porcentaje de
tiempo.
⇒ Se necesitan circuitos adicionales para presentar una interfaz normalizada :
EL SISTEMA DE MEMORIA

♦ Multiplexar las líneas de dirección.


♦ Generar las señales strobe CAS* y RAS*.
♦ Generar y controlar las señales de refresco.
Se utiliza un circuito específico llamado CONTROLADOR DE DRAM.

⇒ La CPU y el Circuito de Refresco compiten por el acceso a Memoria Principal:


Las peticiones de Refresco tienen prioridad.
⇒ El Tiempo de Ciclo de una DRAM es variable.
⇒ Las primeras memorias DRAM eran asíncronas y actualmente ya se utilizan
memorias síncronas SDRAM.

33
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
8.2 TEMPORIZACIÓN DE LAS MEMORIAS DRAM
A) Tiempo de Ciclo típico para una lectura en una DRAM

M e m o ry
R o w a d d re s s C o lu m n a d d r e s s
EL SISTEMA DE MEMORIA

a d d re s s

t t
R A S P re ch g
R A S

C A S

R /W

D a ta

T
A

T
C

34
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
B) Tiempo de Ciclo típico para una escritura en una DRAM

M e m o ry
R o w a d d re s s C o lu m n a d d r e s s
a d d re s s
EL SISTEMA DE MEMORIA

t t
R A S
R A S p re c h g

C A S

R/ W

D a ta

T
D H R

TA
T
C

35
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
8.3 CONTROLADORES DE DRAM

CONTROLADOR DE
DRAM 8203
EL SISTEMA DE MEMORIA

4 Bancos X 64K
4 Bancos X 16K

PCS*

36
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
⇒ Debe implementar la interfaz de la DRAM con la CPU y para ello debe generar las
señales adecuadas.
⇒ Acepta una dirección de m bits y la divide en dos partes (fila, columna ).
⇒ Debe garantizar que toda la DRAM sea refrescada en sus períodos especificados.
⇒ Debe generar las señales strobes RAS* y CAS*.
EL SISTEMA DE MEMORIA

⇒ Debe controlar y gestionar tres tipos de ciclos:


♦ CICLO DE LECTURA: activa el RASi* según el valor de B1-B0 y activa CAS*.
♦ CICLO DE ESCRITURA: activa el RASi* según el valor de B1-B0 y activa CAS.*
♦ CICLO DE REFRESCO: periódicamente se activa la línea REFRQ.
por las líneas OUT7-OUT0 se envía el contenido del Contador de refrescos.
se activan todas las líneas RASi*.
el Contador de refrescos se incrementa.

37
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
CONTROLADOR DE DRAM 8207
EL SISTEMA DE MEMORIA

4 Bancos X 64K
4 Bancos X 256K

38
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
8.4 DISEÑO DE UN SISTEMA DE DRAM
Memoria DRAM de 128Kx8 bits a partir de chips de 64Kx1 bits

A0-A7 8 AD C0 AD C1 AD C6 AD C7
RAS0* RAS* RAS* RAS* RAS*
EL SISTEMA DE MEMORIA

PCS* 64kx1 64kx1 64kx1 64kx1


A18
CAS* CAS* CAS* CAS*
8203 WE* WE* WE* WE*
A17 B1 D D D D
A16 B0

A8-A15 AH0-AH7
A0-A7 AL0-AL7 AD C8 AD C9 AD C14 8 AD C15
RAS1* RAS* RAS* RAS* RAS*
RAS2* 64kx1 64kx1 64kx1 64kx1
REF CAS* CAS* CAS* CAS*
RAS3* WE* WE* WE* WE*
RD D D D D
WR
CAS*

WE* 1 1
1 1

8
Bus Datos

39
8 MEMORIAS RAM DINÁMICAS : DRAM cont.
8.5 CICLOS DE REFRESCO DE UNA DRAM
Se utilizan dos políticas:
P1) Se refrescan todas las filas sucesivamente de todos los chips.
Ciclo de refresco muy largo.
P2) Se entrelaza el refresco de una o pocas filas con operaciones de lectura/escritura.
EL SISTEMA DE MEMORIA

Múltiples ciclos de refresco.

⇒ La temporización de la Memoria Principal debe cumplir las características impuestas


por el tipo de Bus de Memoria que utilice el sistema.
BUSES ASÍNCRONOS: el tiempo de ciclo variable de la memoria se maneja de forma
natural.
BUSES SÍNCRONOS: a veces es posible solapar un ciclo de refresco en la primera
parte de un ciclo de bus.

⇒ Actualmente el Árbitro del Bus tiene capacidad para conceder ciclos de refresco y los
refrescos se hacen bajo petición al árbitro, al igual que los demás tipos de ciclos.

40
9 MEMORIAS DE LECTURA FRECUENTE: RMM
Son memorias no volátiles de acceso aleatorio.
La información se coloca en el momento de la construcción del chip o bien mediante
dispositivos especiales de escritura.
EL SISTEMA DE MEMORIA

9.1 MEMORIAS ROM +v

(Read Only Memory)


Utiliza una organización 2D.
Se construye una máscara que especifica
el contenido de la matriz de celdas. Address
00 Row
Se pueden hacer muchas copias a un decoder

precio barato.

CS

1 0 1 0

41
9 MEMORIAS DE LECTURA FRECUENTE: RMM cont.
9.2 MEMORIAS ROM PROGRAMABLES: PROM
(Programable Read Only Memory)
Utiliza una organización 2D.
El fabricante suministra la matriz de celdas con todos los bits a ‘1’. Cada celda lleva un
fusible incorporado.
EL SISTEMA DE MEMORIA

El proceso de escritura se lleva a cabo eléctricamente fundiendo los fusibles de aquellos


bits con valor ‘0’.
Puede realizarlo el suministrador o el cliente con posterioridad a la fabricación del chip.
La memoria PROM permite una sola grabación y es más cara que la ROM.

9.3 MEMORIAS PROM BORRABLES: EPROM


(Erasable Programable Read Only Memory)
Utiliza condensadores muy bien aislados como celdas de almacenamiento.
Mediante un proceso OFF-LINE de rayos ultravioleta se elimina todo su
contenido.
Un proceso OFF-LINE de corriente eléctrica permite su escritura varias veces.
Este tipo de memoria es más cara que la memoria PROM.

42
9 MEMORIAS DE LECTURA FRECUENTE: RMM cont.
9.4 MEMORIAS PROM BORRABLES ELÉCTRICAMENTE: EEPROM
(Electricaly Erasable Programable Read Only Memory)
Mediante un proceso ON-LINE de corriente eléctrica se puede borrar de forma
selectiva a nivel de byte.
Un proceso ON-LINE de corriente eléctrica permite su escritura a nivel de byte.
EL SISTEMA DE MEMORIA

Es más cara que la memoria EPROM.

9.5 MEMORIAS FLASH EEPROM


Mediante un proceso ON-LINE de corriente eléctrica se puede borrar de forma
selectiva a nivel de bloques de bytes.
Un proceso ON-LINE de corriente eléctrica permite su escritura a nivel de
bloques de bytes.
Son más baratas que las memorias EEPROM.

43
9 MEMORIAS DE LECTURA FRECUENTE: RMM cont.
RESUMEN
ROM Cost Programmability Time to Time to Erase
Type Program

Mask- Very At factory Weeks N/A


EL SISTEMA DE MEMORIA

programmed inexpensive only


ROM

PROM Inexpensive Once, by Seconds N/A


end user

EPROM Moderate Many times Seconds 20 minutes

Flash Expensive Many times 100 µs 1 s, large


EEPROM block

EEPROM Very Many times 100 µs 10 ms,


expensive byte

44
10 MÓDULOS DE MEMORIA
♦ Los chips de memoria se organizan en Tarjetas de memoria.
♦ Cada Tarjeta consta de una cadena organizada de chips que se conecta a la placa base.
♦ Una o varias tarjetas forman un módulo operativo de memoria.
EL SISTEMA DE MEMORIA

⇒ Los Módulos de memoria:


Deben cumplir los requerimientos de la interfaz Procesador-Memoria Principal.
Tener capacidad de refresco DRAM.
Permitir la expansión de la capacidad total de memoria principal.

45
10 MÓDULOS DE MEMORIA cont.
EL SISTEMA DE MEMORIA

SRAM

46
10 MÓDULOS DE MEMORIA cont.

A ddress
k+ m
A d d r e ss Re g i s t e r
k
Ch i p / b o a r d
s el e ct i o n m/ 2 m/ 2 m/ 2
EL SISTEMA DE MEMORIA

Re f r e s h c o u nt er A d dress
Re f r e s h
clo c k an d Mult iplex er
c o nt rol 2 m/ 2

B o ar d a n d A d d r e ss li n e s
Request

Refresh
c hi p s el e c t s
Mo d ule
select
RA S
Dy na m ic
Re a d Mem or y RA M A r r a y
t iming CA S

Writ e g e n er at or
R/ W
D at a li n e s
Re a d y w

D at a r e g ist er
w
Dat a

47
10 MÓDULOS DE MEMORIA cont.
10.1 PRESTACIONES DE UN SISTEMA DE MEMORIA
Es necesario tener en cuenta todos los pasos que intervienen en un acceso a memoria,
incluyendo el tiempo de propagación de las señales eléctricas.
⇒ Para una operación de lectura en una memoria SRAM hay que considerar :
Tiempo de activación de los drivers del bus de direcciones : 40 ns
EL SISTEMA DE MEMORIA

Tiempo de propagación del bus y bus skew : 10 ns


Tiempo de descodificación de la señal de selección de tarjeta : 20 ns
Tiempo para propagar la señal de selección a otra tarjeta : 30 ns
Tiempo de descodificación de la señal de selección de chip : 20 ns
Tiempo total en alcanzar el chip : 120 ns
Tiempo de acceso para lectura en chip : 80 ns
Tiempo de propagación desde el chip hasta el bus de datos de la tarjeta : 30 ns
Tiempo de activación de los drivers del bus de datos : 40 ns
Tiempo de propagación del bus y bus skew : 10 ns

Tiempo total del acceso de lectura : 280 ns

48
10 MÓDULOS DE MEMORIA cont.
10.2 MEMORIAS ENTRELAZADAS
Se puede utilizar a nivel de chip , tarjeta ó modulo de memoria.
EL SISTEMA DE MEMORIA

49
11 MEMORIAS ASOCIATIVAS
Memoria Direccionable por Contenido : CAM
La búsqueda de información se realiza según el contenido de una posición.
La operación básica es la de COMPARAR todas las posiciones con el contenido de un
Registro especial.
EL SISTEMA DE MEMORIA

set Bits de TAG o marca


Ti = 0 no coincidencia
Ti = 1 coincidencia
Rg Máscara: comparación parcial

50
11 MEMORIAS ASOCIATIVAS cont.
Circuitería de los Rg Comparando y Rg Máscara

C1 C2 Cn Rg COMPARANDO
EL SISTEMA DE MEMORIA

M1 M2 Mn Rg MASCARA

ORDEN
COMPARACION

M11 MZ1 M12 MZ2 M1n MZn Líneas a las Celdas


Líneas de Coincidencia

M1j = MZj = 0 no es necesario hacer la comparación


M1j = 1 y MZj = 0 → Cj =1
M1j = 0 y MZj = 1 → Cj =0

51
12 MEMORIAS CACHE
El tiempo de ciclo de la MP. limita el ritmo al que la CPU puede ejecutar instrucciones.
Lo ideal sería que la MP. fuera de la misma tecnología que los registros de la CPU.
Una solución es colocar una memoria muy rápida y pequeña entre la CPU y la MP.,
denominada MEMORIA CACHE.
Ejemplo: 256 KB 16 words 32 MB
EL SISTEMA DE MEMORIA

CPU
Cache Main memory
Word Block

Address
Mapping function

El éxito de la MC. se debe a la propiedad de LOCALIDAD.


Localidad Temporal
Localidad Espacial
Conjunto de trabajo (Working set)

52
12 MEMORIAS CACHE cont.
La MP. de 2n palabras está organizada en B bloques de longitud fija de K palabras :
B = 2n/K bloques.
La MC. se divide en L líneas o particiones (slots) de K palabras.
EL SISTEMA DE MEMORIA

L<<B

L-1

B-1

Se necesita una ETIQUETA (Tag) para identificar el bloque de una línea.


Función de Correspondencia (mapping).
Algoritmo de Reemplazamiento o sustitución.

53
12 MEMORIAS CACHE cont.
12.1 PARÁMETROS RELEVANTES DE UNA MC.
TASA DE ACIERTO
Acierto (hit) y fallo (miss).
Tasa de acierto H = Nº aciertos / Nº referencias > 0.9
EL SISTEMA DE MEMORIA

COSTE
Cc S c + C p S p
Cs = Coste por bit promedio del sistema
Sc + S p

Lo ideal Cs ≅ Cp ya que Cc >> Cp y Sc >> Sp

TIEMPO DE ACCESO
Ts = H Tc + (1-H)Tp Tiempo promedio de acceso del sistema

54
12 MEMORIAS CACHE cont.
12.2 TAMAÑO DE LA MC.
Plantea un cierto compromiso:
⇒ Debería ser lo suficientemente pequeña como para que el coste medio por bit de información
almacenada en la memoria interna del computador estuviese próximo al de la memoria principal.
⇒ Tendría que ser lo suficientemente grande como para que el tiempo de acceso medio total
EL SISTEMA DE MEMORIA

fuese lo más próximo posible al de la memoria cache.


Estudios empíricos sugieren que el tamaño de una cache esté situado entre 1KB y 1MB.

⇒ Los algoritmos de gestión deben evitar ANOMALÍAS con respecto a la capacidad.

⇒ Cuanto mayor sea el tamaño de los bloques o líneas, menos cogerán en cache y
más veces se ejecutará el algoritmo de sustitución de bloques.
⇒ Cuando crece el tamaño de un bloque, cada nueva palabra añadida a ese bloque
estará a mayor distancia de la palabra requerida por la CPU, y por tanto es menos
probable que sea necesitada a corto plazo.
Se sugiere un tamaño de línea de 4-8 unidades direccionables.

55
12 MEMORIAS CACHE cont.
NÚMERO DE CACHES
⇒ Cache interna. Nivel L1: en el mismo chip que el procesador. Los accesos a esta cache
se efectúan muy rápido. La capacidad de esta cache es bastante pequeña (1-8 KB).
⇒ Cache externa. Nivel L2: fuera del procesador, por lo que será más lenta que la cache
de nivel L1 pero seguirá siendo más rápida que la MP. La capacidad podrá ser mayor (125-
EL SISTEMA DE MEMORIA

512 KB).
CONTENIDO DE LA CACHE
⇒ Una cache que contiene datos y instrucciones presenta las siguientes ventajas:
Tiene una tasa de aciertos mayor ya que nivela la carga, es decir, si un patrón de ejecución
implica más captaciones de instrucciones que de datos, la cache tenderá a llenarse con
instrucciones, y viceversa. Sólo se necesita implementar una cache, por lo que el coste será
más reducido.
⇒ El uso de dos caches, una de instrucciones y otra de datos, da mejores prestaciones
actualmente ya que se emplea la ejecución paralela de instrucciones y los diseños
pipelining. Elimina la competición entre el procesador de instrucciones y la unidad de
ejecución.

56
12 MEMORIAS CACHE cont.
12.3 FUNCIÓN DE CORRESPONDENCIA
Bloques de la MP. ⇔ Líneas de la MC.
12.3.1 CORRESPONDENCIA DIRECTA
Cada bloque de MP. sólo puede ocupar una línea determinada de MC.
EL SISTEMA DE MEMORIA

⇒ La función de correspondencia (mapping) es: i = j módulo L


i = número de línea de cache asociada, j = número de bloque de la memoria principal,
L = número total de líneas de la memoria cache
⇒ Cada dirección de la MP. puede verse como dividida en tres campos :

K = 2w

w bits = Identifica cada palabra dentro de un bloque, s bits = Identifica el número de bloque
El uso de una parte de la dirección ( r bits ) como número de línea proporciona una
asignación única de cada bloque de memoria principal en la cache.

57
12 MEMORIAS CACHE cont.
EL SISTEMA DE MEMORIA

58
12 MEMORIAS CACHE cont.
EL SISTEMA DE MEMORIA

MP.= 64KB, MC.= 4KB, K = 16B, L = 256 líneas, B = 4096 bloques

59
12 MEMORIAS CACHE cont.
12.3.2 CORRESPONDENCIA ASOCIATIVA
Un bloque de MP. puede estar colocado en cualquier línea de la MC.
⇒ Una dirección de MP. se interpreta como una etiqueta y un campo de palabra.
EL SISTEMA DE MEMORIA

Palabra = Identifica cada palabra dentro de un bloque de MP.


Etiqueta = Identifica unívocamente un bloque que MP.
⇒ Para determinar si un bloque está en la memoria cache, se debe examinar
simultáneamente todas las etiquetas de las líneas de la memoria cache. Se necesita
circuitería asociativa para hacer la comparación simultánea

60
12 MEMORIAS CACHE cont.
EL SISTEMA DE MEMORIA

61
12 MEMORIAS CACHE cont.
EL SISTEMA DE MEMORIA

MP.= 64KB, MC.= 4KB, K = 16B, L = 256 líneas, B = 4096 bloques

62
12 MEMORIAS CACHE cont.
12.4 MECANISMOS DE TRAIDA DE BLOQUES
Definen qué bloques de MP. y cuando se beben copiar en la MC.
TRAIDA POR DEMANDA
En caso de fallo se copia el bloque de MP. pedido, eliminando el contenido de una de
las Líneas de la MC.
EL SISTEMA DE MEMORIA

TRAIDA ANTICIPADA
La copia de bloques se hace anticipándose al procesador.
Si el procesador hace referencia al bloque i-ésimo se copia el bloque i+1 reemplazando
al contenido de una Línea de la MC.
Puede producirse un problema de POLUCIÓN de la cache.

63
12 MEMORIAS CACHE cont.
12.5 ALGORITMOS DE REEMPLAZAMIENTO O SUSTITUCIÓN
Cuando la MC. está llena es necesario decidir qué bloque será reemplazado.
⇒ Si la correspondencia es directa la línea está fijada de antemano.
⇒ Reemplazar aquella línea que vaya a ser referenciada más tarde ( depende del S/W ).
⇒ Entre los algoritmos que se han propuesto destacan los siguientes:
EL SISTEMA DE MEMORIA

FIFO: first in - first out


LRU: least recently used
LFU: least frequently used
⇒ Antes de reemplazar una línea es necesario comprobar si ha sido modificada.
Mantener la COHERENCIA de los contenidos entre MP. y MC.
Si el bloque anterior ha sido modificado es necesario actualizar la MP.

64
12 MEMORIAS CACHE cont.
12.6 POLITICAS DE ESCRITURA
A) EL DATO ESTÁ LA CACHE
Escritura inmediata o directa (write through):
Todas las escrituras se hacen tanto en la MC. como en la MP. El principal
inconveniente es que genera mucho tráfico con la MP.
EL SISTEMA DE MEMORIA

Post-escritura (write back):


Las escrituras se realizan sólo en la MC. Asociada a cada línea de la cache existe un bit
o marca de modificación. Al reemplazar una línea de la cache, si el bit está a 1, se
escribirá la línea en MP., mientas que si está a 0 no.
Inconveniente: se obliga a que los módulos de E/S accedan a memoria principal a través
de la memoria cache. Esto complica la circuitería y genera un cuello de botella.
B) EL DATO NO ESTÁ LA CACHE
Write Allocate: Se carga la línea en la cache y después se actualiza el dato.
Write No-Allocate: Se actualiza únicamente la MP.
⇒ El porcentaje de referencias para escritura es del orden del 15 %.

65
12 MEMORIAS CACHE cont.
EJEMPLOS
EL SISTEMA DE MEMORIA

66

También podría gustarte