Organizaci n del computador
This presentation is the property of its rightful owner.
Sponsored Links
1 / 37

Organización del Computador PowerPoint PPT Presentation


  • 91 Views
  • Uploaded on
  • Presentation posted in: General

Organización del Computador. Memorias. Jerarquía de las memorias. Jerarquía de memorias en un Pentium. Métricas de las memorias. Capacidad de almacenamiento: en bytes o múltiplos (kB, MB, TB) Tiempo de acceso: en segundos o submúltiplos (ns, ms)

Download Presentation

Organización del Computador

An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -

Presentation Transcript


Organizaci n del computador

Organización del Computador

Memorias


Jerarqu a de las memorias

Jerarquía de las memorias


Jerarqu a de memorias en un pentium

Jerarquía de memorias en un Pentium


M tricas de las memorias

Métricas de las memorias

  • Capacidad de almacenamiento: en bytes o múltiplos (kB, MB, TB)

  • Tiempo de acceso: en segundos o submúltiplos (ns, ms)

  • Velocidad de tranferencia de datos: en bytes/seg o múltiplos

  • Comsumo de energía: en Watts

  • Tamaño físico: en cm3

  • Costo total y costo por MB: en $ y $/MB


Tipos y tecnolog a de memorias

Tipos y tecnología de memorias

  • Memorias ROM (Read Only Memory)

    • Programable ROM

    • Erasable Programable ROM

    • Electronically Erasable Programable ROM

  • Memorias RAM (Random Access Memory)

    • RAM estáticas vs dinámicas

    • RAM volátiles vs no volátiles

  • Memorias FLASH


Ejemplo memoria otp eprom

Ejemplo memoria OTP EPROM


Caracter sticas f sicas de la eprom

Características físicas de la EPROM


Organizaci n del computador

Ejemplo memoria OTP EPROM


Diagrama de tiempos de la eprom

Diagrama de tiempos de la EPROM


Ejemplo eeprom

Ejemplo EEPROM


Ejemplo eeprom1

Ejemplo EEPROM


Ejemplo memoria flash

Ejemplo memoria FLASH


Ejemplo memoria sram

Ejemplo memoria SRAM


Ejemplo memoria sram1

Ejemplo memoria SRAM


Ejemplo memoria sram2

Ejemplo memoria SRAM


Ejemplo memoria sram3

Ejemplo memoria SRAM


Tecnolog a de integraci n actual

Tecnología de Integración Actual

65 nm nanotechnology

Imágenes obtenidas con TEM (Transmission Electron Microscope) de una cepa del virus de la gripe, y de un transistor construido con la tecnología de 65 nm utilizada desde el año 2005 en el Procesador Pentium IV y posteriores.


Tecnolog a de memorias ram din mica

CAS

RAS

Cd

Buffer

Transistor

Bit de datos de salida al bus

Tecnología de memorias: RAM Dinámica

Diagrama de un bit elemental de DRAM (Dynamic RAM).

  • Almacena la información como una carga en una capacidad espuria de un transistor.

  • Una celda (un bit) se implementa con un solo transistor  máxima capacidad de almacenamiento por chip.

  • Ese transistor consume mínima energía  Muy bajo consumo.

  • Al leer el bit, se descarga la capacidad  necesita regenerar la carga  aumenta entonces el tiempo de acceso de la celda.


Tecnolog a de memorias ram est tica

Línea de Bit

Línea de Bit

Selección

Tecnología de memorias: RAM Estática

3

4

6

1

2

5

Diagrama del biestable de un bit básico de SRAM (Static RAM).

  • Almacena la información en un biestable.

  • Una celda (un bit) se compone de seis transistores  menor capacidad de almacenamiento por chip.

  • 3 transistores consumen energía máxima en forma permanente y los otros 3 consumen mínima energía  Mayor consumo

  • La lectura es directa y no destructiva  tiempo de acceso muy bajo


Estructura de bus cl sica

Estructura de Bus clásica

Procesador

  • Desde fines de los años 80, los procesadores desarrollaban velocidades muy superiores a los tiempos de acceso a memoria.

  • En este escenario, el procesador necesita generar waitstatespara esperar que la memoria esté lista (“READY”) para el acceso.

  • ¿Tiene sentido lograr altos clocks en los procesadores si no puede aprovecharlos por tener que esperar (wait) a la memoria?

Bus Local del

Procesador

ADDRESS

DATOS

CONTROL

Bus de

Control

Buffer de

Datos

Buffer de

Address

BUS DEL SISTEMA

Memoria del Sistema

E/S del Sistema


Organizaci n del computador

Crecimiento de la velocidad de clock de las CPU versus memoria

1100

1000

Pentium III

1GHz

900

800

700

600

Pentium II

400 MHz.

500

400

486 DX4

100 MHz.

300

Memorias

200

386 DX

33 MHz

100

89

90

91

92

93

94

95

96

97

98

99

00


El problema

El problema

  • RAM dinámica (DRAM)

    • Consumo mínimo.

    • Capacidad de almacenamiento comparativamente alta.

    • Costo por bit bajo.

    • Tiempo de acceso alto (lento), debido al circuito de regeneración de carga.

    • Si construimos el banco de memoria utilizando RAM dinámica, no aprovechamos la velocidad del procesador.

  • RAM estática (SRAM)

    • Alto consumo relativo.

    • Capacidad de almacenamiento comparativamente baja.

    • Costo por bit alto.

    • Tiempo de acceso bajo (es mas rápida).

    • Si construimos el banco de memoria utilizando RAM estática, el costo y el consumo de la computadora son altos.


La soluci n memoria cache

La solución: Memoria cache

  • Se trata de un banco de SRAM de muy alta velocidad, que contiene una copia de los datos e instrucciones que están en memoria principal

  • El arte consiste en que esta copia esté disponible justo cuando el procesador la necesita permitiéndole acceder a esos ítems sin recurrir a wait states.

  • Combinada con una gran cantidad de memoria DRAM, para almacenar el resto de códigos y datos, resuelve el problema mediante una solución de compromiso típica.

  • Requiere de hardware adicional que asegure que este pequeño banco de memoria cache contenga los datos e instrucciones mas frecuentemente utilizados por el procesador.


Referencias

Referencias

  • El tamaño del banco de memoria cache debe ser:

    • Suficientemente grande para que el procesador resuelva la mayor cantidad posible de búsquedas de código y datos en esta memoria asegurando una alta performance

    • Suficientemente pequeña para no afectar el consumo ni el costo del sistema.

  • Se dice que se logra un hit cuando se accede a un ítem (dato o código) y éste se encuentra en la memoria cache.

  • En caso contrario, se dice que el resultado del acceso es un miss.

  • Se espera un hit rate lo mas alto posible

Cantidad de accesos con presencia en Memoria Cache

hit rate =

Cantidad total de accesos a memoria


Operaci n de lectura de memoria

Inicio

CPU envía señal de lectura

Miss

Hit!!

Busca ítem en cache

Busca ítem en memoria del sistema

Busca ítem en cache y envía a la CPU

Escribe ítem en el cache

Actualiza directorio cache

Envía ítem a la CPU

Fin

Operación de Lectura de memoria


Estructura de bus del sistema con cache

Procesador

CONTROL

ADDRESS

DATOS

Bus Local del

procesador

Memoria

cache

Controlador deMemoriacaché

CONTROL

Buffer de

Datos

Buffer de

Address

Bus Local del controlador cache

Bus de

Control

BUS DEL SISTEMA

Estructura de Bus del sistema con cache

Bus de

Datos

Bus de

Dir.


Como trabaja el controlador cache

Como trabaja el controlador cache

  • El controlador cache trabaja mediante dos principios que surgen de analizar el comportamiento de los algoritmos de software que se emplean habitualmente.

    • Principio de vecindad temporal: Si un ítem es referenciado, la probabilidad de ser referenciado en el futuro inmediato es alta.

    • Principio de vecindad espacial: Si un ítem es referenciado, es altamente probable que se referencie a los ítems vecinos a éste.

    • Ejemplo: Algoritmo de convolución

      for (i = 0 ; i < 256 ; i++ ){

      suma = 0.0f;

      for (j = 0 ; (j <= i && j < 256) ; j++)

      suma += v0[i-j] * v1[j];

      fAux[i] = suma;

      }

    • i, j, suma, se utilizan a menudo. Por lo tanto si se mantienen en el cache, el tiempo de acceso a estas variables por parte del procesador es óptimo.


Estructura de memoria cache

Estructura de memoria cache

Dirección

Tag

Línea

0

1

2

3

4

5

6

7

8

9

Línea

Línea: Elemento mínimo de palabra de datos dentro del cache.

Corresponde a un múltiplo del tamaño de la palabra de datos de memoria.

Razón: Cuando se direcciona un ítem en memoria generalmente se requerirá de los ítem que lo rodean (Principio de vecindad espacial)

Ancho de palabra


Organizaci n del cach mapeo directo

Bit de validez del Tag

1 Línea = 4 bytes

Línea

Tag

17 bits

Línea

Bits de validez de las líneas

Set 0

32 Kbytes

(igual tamaño

que el de

la cache)

Set 1

Pag.217 -1

Set 1023

Pag.0

Directorio de Caché Interno

Memoria Caché

4 Gbytes de Memoria Principal

Organización del caché: Mapeo Directo


Organizaci n del cach de mapeo directo

Caché Address (1 de 8 KLíneas)

A5

A

A

A

A

A

2

15

14

4

31

Tag de 17 bits (1 de las 217 páginas)

Set Address (1 de 1024 sets)

Organización del caché de mapeo directo

Selector de

Línea

(1 de 8 líneas)

Bit de validez del Tag

0

Bits de validez de la línea

1

Nro de Set

1023

Directorio de

Caché Interno


Organizacion del cache asociativo de dos v as

Bit de validez del Tag

1 Línea = 4 bytes

Línea

Línea

Tag

Línea

18 bits

18 bits

Bits LRU

Bits de validez de las líneas

Set 0

16 Kbytes

(igual tamaño Que el de

cada banco del cache)

Bits LRU

18 bits

18 bits

Set 1

Pag.218 -1

Bits LRU

18 bits

18 bits

Set 512

Pag.0

Directorio de Caché Interno

Memoria Caché

4 Gbytes de Memoria Principal

Organizacion del cache: Asociativo de dos vías


Organizaci n del cach asociativo de dos v as

Organización del caché asociativo de dos vías

Caché Address (1 de 4 KLíneas)

A31

A5

A4

A2

A14

A13

Selector de

Línea

(1 de 8 líneas)

Tag de 18 bits (1 de las 218 páginas)

Set Address (1 de 512 sets)

Bit de validez del Tag

0

Bits de validez de la línea

1

Nro de Set

512

Directorio de

Caché Interno


Manejo del contenido

Manejo del contenido

  • Algoritmos de reemplazo del contenido de la memoria cache

    • LRU: Least Recently Used.

      • Se corresponde con el principio de vecindad temporal.

    • LFU: Least Frecuently Used

    • Random

    • FIFO


Coherencia de un cache

Coherencia de un cache

  • Una variable que está en el caché también está alojada en alguna dirección de la DRAM.

  • Ambos valores deben ser iguales

  • Cuando el procesador la modifica hay varios modos de actuar

    • Write through: el procesador escribe en la DRAM y el controlador cache refresca el cache con el dato actualizado

    • Writethroughbuffered: el procesador actualiza la SRAM cache, y el controlador cache luego actualiza la copia en memoria DRAM mientras el procesador continúa ejecutando instrucciones y usando datos de la memoria cache

    • Copy back: Se marcan las líneas de la memoria cache cuando el procesador escribe en ellas. Luego en el momento de eliminar esa línea del caché el controlador cache deberá actualizar la copia de DRAM.

  • Si el procesador realiza un miss mientras el controlador cache está accediendo a la DRAM para actualizar el valor, deberá esperar hasta que controlador cache termine la actualización para recibir desde este la habilitación de las líneas de control para acceder a la DRAM.


Multilevel cache

Multilevel cache

Cache

Level1

CPU

Onchip

Cache

Level 2

Cache

controller

Tamaño Cache L2 > Tamaño Cache L1

Velocidad Cache L1 > Velocidad Cache L2

System

Memory

(DRAM)


Implementaciones pr cticas de memoria cache 1

Implementaciones prácticas de memoria cache (1)

  • Intel 80486

    • 8 Kbytes de cache L1 on chip

    • Tamaño de línea: 16 bytes

    • Organización asociativa de 4-vías

  • Pentium

    • dos caches on-chip, uno para datos y otro para instrucciones.

    • Tamaño de cada cahe: 8 Kbytes

    • Tamaño de línea: 32 bytes

    • Organización asociativa de 4-vías

  • PowerPC 601

    • cache on-chip de 32 Kbytes

    • Tamaño de línea: 32 bytes

    • Organización asociativa de 8-vías


Implementaciones pr cticas de memoria cache 2

Implementaciones prácticas de memoria cache (2)

  • PowerPC 603

    • Dos caches on-chip, una para datos y otra para instrucciones

    • Tamaño de cada cache: 8 Kbytes

    • Tamaño de línea: 32 bytes

    • Organización asociativa de 2-vías (organización del cache más simple que en el 601 pero un procesador mas fuerte)

  • PowerPC 604

    • Dos caches on-chip, una para datos y otra para instrucciones

    • Tamaño de cada cache: 16 Kbytes

    • Tamaño de línea: 32 bytes

    • Organización asociativa de 4-vías

  • PowerPC 620

    • Dos caches on-chip, una para datos y otra para instrucciones

    • Tamaño de cada cache: 32 Kbytes

    • Tamaño de línea: 64 bytes

    • Organización asociativa de 8-vías


  • Login