Arquitectura de Sistemas Informáticos

Documentos relacionados
Tema: MAPAS DE MEMORIA: LÓGICA DE SELECCIÓN, GESTIÓN Y ORDENACIÓN DE LA MEMORIA. J. Luis Lázaro, J. Jesús García "MAPA DE MEMORIA" 0

Electrónica Industrial - 4º ETSII. Concepto de capacidad Concepto de bit, byte y word (palabra) Electrónica Industrial - 4º ETSII

Tecnología Electrónica 3º Ingeniero Aeronáutico. Memorias. Mª Ángeles Martín Prats

}Transparencias de clase en

16/11/2016. MEMORIAS de SEMICONDUCTORES

El funcionamiento de una memoria se evalúa por: i. el área del chip por bit de almacenamiento ii. el tiempo de acceso R/W iii. Durabilidad iv.

TEMA 11 MEMORIAS. CIRCUITOS LÓGICOS PROGRAMABLES

Contenido. Memorias en sistemas digitales Tecnologías. Características avanzadas. Memorias no volátiles (ROM) Memorias volátiles (RAM)

TEMA 5 DISPOSITIVOS LÓGICOS PROGRAMABLES Y MEMORIAS. 1. Introducción. 2. Dispositivos lógicos programables.

Memoria y Entrada/Salida Tecnología Organización - Expansión

Tema 0. Introducción a los computadores

Tema VI: Memorias y Dispositivos de Lógica Programable (PLDs)

MÓDULO Nº8 MEMORIAS SEMICONDUCTORAS

Memorias de Semiconductor. Departamento de Electrónica Curso 2010/11

UD1. MEMORIAS. Centro CFP/ES FUNCIONAMIENTO BIESTABLE RS

TEMA 9. MEMORIAS SEMICONDUCTORAS

Tema. Memorias y dispositivos programables. Departamento de Tecnología Electrónica Universidad de Sevilla

Tema 9. SISTEMAS COMBINACIONALES PROGRAMABLES SISTEMAS COMBINACIONALES PROGRAMABLES NO UNIVERSALES

MEMORIAS DE SEMICONDUCTORES

TEMA 2. Memorias ROM, PROM, EPROM y E2PROM. Memorias FLASH. Memorias FIFO y LIFO. Diseño de circuitos lógicos empleando PROMs.

El Microprocesador. Tecnología y Funcionamiento

Dispositivos de memoria (Parte #2)

Memorias de Semiconductor. Departamento de Electrónica Curso 2010/11

Tema 5.- Memorias. ---***---

Tema 5: Memorias. Espacio reservado para notas del alumno

Sistemas Electrónicos Industriales II EC2112

Qué es un Microcontrolador?

Qué es un Microcontrolador?

Ing. Jose Luis Apaza Gutierrez MEMORIAS. Un elemento de memoria es aquel elemento capaz de almacenar un estado durante un tiempo determinado.

Tema 12 ELECTRÓNICA DIGITAL UNIDADES DE MEMORIA DIGITALES (PARTE 1) Enrique Mandado Pérez. Electrónica Digital: Unidades de memoria digitales

Qué es la memoria? Organización de la memoria. Elementos de almacenamiento. Los biestables. Los registros. La memoria

Bloques funcionales combinacionales. Bloques para el encaminamiento y/o transferencia de datos

Organización de la memoria

Semestre LABORATORIO DE DISPOSITIVOS DE ALMACENAMIENTO Y DISPOSITIVOS DE ENTRADA / SALIDA PREVIO # 2

Controladores de memoria externa

La memoria del ordenador

Electrónica Industrial

MEMORIAS Y BUSES. Las memorias son dispositivos de almacenamiento de información, en la cual los bits se graban en celdas. D 2

Todos los sistemas basados en procesadores tienen dos tipos de memorias:

Unidad de Memoria. Almacenamiento de información Operaciones básicas. Propiedades de la Memoria. Escritura o almacenamiento. Lectura.

MICROCONTROLADORES PIC16F84 ING. RAÚL ROJAS REÁTEGUI

AUTOMATIZACION. Reconocer la arquitectura y características de un PLC Diferenciar los tipos de entradas y salidas MARCO TEORICO. Estructura Interna

Instituto Tecnológico de Morelia

Contenidos. Arquitectura de ordenadores (fundamentos teóricos) Elementos de un ordenador. Periféricos

Electrónica Básica. Gustavo A. Ruiz Robredo Juan A. Michell Mar<n. Tema C.3. Memorias Semiconductoras DPTO. DE ELECTRÓNICA Y COMPUTADORES

Soluciones a los problemas impares. Tema 5. Memorias. Estructura de Computadores. I. T. Informática de Gestión / Sistemas

Estructura básica de un ordenador

Arquitectura de Computadores

Tema 5: Memorias. Índice Conceptos básicos Parámetros característicos Jerarquía de memoria Memoria principal Tecnologías Estructura Mapa de memoria

CONTEXTO DE LA MEMORIA EN UN SISTEMA DE CÓMPUTO M E M O R I A S

Fundamentos de Sistemas Digitales Tema 08

Electrónica Digital II

MEMORIA EJERCICIO 1 EJERCICIO 2

Unidad II: Memorias. Ing. Marglorie Colina

Organización de Computadoras. Turno Recursantes Clase 8

4.1. Circuitos Digitales Configurables

Bibliografía básica de referencia: Fundamentos de Informática para Ingeniería Industrial, Fernando Díaz del Río et al.

Dispositivos Electrónicos

Tutoría 2. Banco de memoria de 8 y 16 bits (8086)

MODULO DE MEMORIA RAM. Ing. Raúl Rojas Reátegui

TEMA 5.3 SISTEMAS DIGITALES

o Nos vamos a centrar en la memoria del sistema, esta memoria es conocida como RAM (random-access memory, memoria de acceso aleatorio).

SUBSISTEMAS COMBINACIONALES. Tema 4: SUBSISTEMAS COMBINACIONALES

2º Cuatrimestre MÓDULO 11: Introducción a la jerarquía de memoria. fc 2

Tipos de Memoria. Microprocesadores. Microprocesadores. Carlos Canto Q. MEMORIA DE ALMACENAJE ALAMCEN SECUNDARIO ALAMACEN DE RESPALDO

TEMA 8 MEMORIAS DIGITALES

Tema9. M emorias y dispositivos programables. Depar t ament o de Tec nol ogí a El ec t r óni c a Uni ver s i dad de Sevi l l a

1.2 Análisis de los Componentes. Arquitectura de Computadoras Rafael Vazquez Perez

Memorias y dispositivos programables. Departamento de Tecnología Electrónica Universidad de Sevilla

Aplicaciones con transistor MOSFET

UNIDAD CENTRAL DE PROCESO

Rápida y cara. Cache. Memoria principal. Memoria discos. Almacenamiento fuera de línea (cintas) Lenta pero barata Figura 7-1

FUNDAMENTOS DE SISTEMAS DIGITALES. Tema 3: Lógica combinacional (II): Ruta de datos

ELEMENTOS HARDWARE DEL ORDENADOR. Memoria Principal (RAM)

MEMORIAS Y LÓGICA PROGRAMABLE

Informática Básica. 2º Diplomatura en Ciencias Empresariales Universidad Pública de Navarra. Informática Básica, DCE-UPNA 1

Memoria Externa. Diseño de Sistemas con FPGA Patricia Borensztejn 1er cuatrimestre 2009

502 A I.S.C. JOSE BARDO MORENO MACHADO ENRIQUE EDUARDO MORAN PRADO EDILBERTO RASCON HERNANDEZ

Para implementar una memoria de mayor capacidad se deben considerar los siguientes pasos:

SISTEMAS DIGITALES III. Unidad I MEMORIAS

PROBLEMAS DE ESTRUCTURA DE LOS COMPUTADORES MAPAS DE MEMORIA

MEMORIAS ELECTRÓNICAS

2. PANTALLA ALFANUMÉRICA DE LCD (HITACHI HD44780U)

Departamento de Electrónica Electrónica Digital. Mapas de memoria. Bioingeniería Facultad de Ingeniería - UNER

Sistemas Informáticos

Tema 4 SUBSISTEMAS DE MEMORIA. Estructura de Computadores OCW_2015 Nekane Azkona Estefanía

ESTRUCTURA BÁSICA DE UN ORDENADOR

Memoria. M. en C. Erika Vilches. Parte 6

Arquitectura basica de un computador

Dispositivos Lógicos Programables

Microprocesadores, microcontroladores, memorias

Circuitos secuenciales

TEMA 12: MEJORA DE LAS PRESTACIONES DE LA MEMORIA

Conceptos preliminares Familias lógicas Topologías Compuertas Flip Flops Osciladores. Introducción a la Electrónica

El ordenador. Codificación binaria. Código ASCII

ARQUITECTURA DEL PIC16F84A

Unidad 2: Taller de Cómputo. Estructura y Componentes de la Computadora UNIDAD DOS: INTRODUCCIÓN

Procesador Concepto Tipos Velocidad de proceso Características funciones aritmético- lógicas y de control

Transcripción:

Arquitectura de Sistemas Informáticos Memorias: Registros, SRAM, ROM, FLASH Departamento de Electrónica I.E.S. Albert Einstein 10-9-2007 1

Memorias, usos y tipos Usos: Mantener una cantidad importantes de estados registrados. Almacenamiento de datos y programas Registos de propósito general Buffers Tablas de datos Memoria sistemas informáticos Etc. Ejemplo RAM: Registros de un microprocesador Tipos: RAM - Random Access memory ROM - Read Only Memory EPROM, FLASH - Electrically Programmable Read Only Memory regid = identificador registro (dirección dato en memoria) tamaño(regid) = log2(nº de reg) WE = write enable (permitir escritura) p.ej: 256 posiciones requieren 8 lineas de direcciones 10-9-2007 2

Definiciones Interfaz de memoria para Acceso a Datos Asíncorono (sin reloj): Un cambió en la dirección produce que aparezcan los datos en el bus Síncrono (con reloj): Un cambio de dirección, seguido del flanco/nivel del reloj (CLK) produce la aparición del dato o provoca una operación de escritura. A veces se puede combinar operaciones de escritura síncronas y de lectura asíncronas. Volátil: Se pierden los datos/estados si se desconecta la energía eléctrica. No volátil: Retiene los datos/estados a pesar de retirar la alimentación eléctrica. 10-9-2007 3

Memoria: Grupo de células básicas Para operaciones de lectura, los registros son equivalentes a un array 2-D de flip-flops con salidas tristate en cada uno: Se agrupan por palabras. Se activa una linea (palabra). Unidad con lógica de escritura añadida (si se puede escribir): Este circuito es una abstracción funcional de los circuitos reales. como se activa "SEL con una dirección? 10-9-2007 4

Memoria: Grupo de células básicas K x N Direcciones [(log 2 (K)-1):0] Memoria Datos[(N-1):0] K casillas, N bits por casilla (posición) El bus de direcciones tiene log 2 (K) lineas, el bus de datos tiene N lineas. Memoria n m (n posiciones m bits) log 2 n lineas direcciones address lines m lineas entrada/salidas data lines A 1 A 0 Decodificador 2 4 Array de células Esto es común para todos los tipos de memorias existentes: -ROM, RAM, EEPROM, FLASH, etc. Memoria 4 x 5-4 Posiciones - 5 Bits por posición Buffers D 4 D 3 D 2 D 1 D 0 10-9-2007 5

Decodificador de direcciones (address) La función del decodificador de direcciones es generar la selección para una dirección única de registro interno de la memoria. Binario -> una dirección un dato (palabra) Simplificado (demultiplexor) La salida se usa para selecciónar la fila. Existen diferentes circuitos para esta función. Estos circuitos están dentro de la memoria. 10-9-2007 6

Memorias: Lineas de control Direcciones[log 2 (K)-1:0] CS OE W K x N Memoria Datos[N-1:0] Chip Select Debe ser activado para que la memoria responda a las operaciones, sean de lectura o de escritura. Si está negado, el bus de datos está en estado de alta impedancia. OE (Output Enable) Activa para operaciones de lectura. Si se niega, el bus de datos está en alta impedancia. W Activa para operaciones de escritura, las lineas de datos se convierten en entradas de la memoria. 10-9-2007 7

Memoria: Operación de lectura Lectura asíncrona Selección de chip (CE) Establecimiento de dirección (Addr). Al activar la salida, datos en salida de forma inmediata. Independiente del reloj. 10-9-2007 8

Memoria: Operación de escritura Escritura síncrona Se establece la dirección de escritura en el bus de direcciones. Se pone el dato a grabar. Se activa la orden escritura y en el siguiente ciclo de reloj se produce la escritura. 10-9-2007 9

Volátil: Tipos de memoria Random Access Memory (RAM), escritura y lectura:» SRAM estática, no necesita refrescar valores.» DRAM "dinámica, necesita operaciones de refresco. La información se pierde al desconectar la alimentación. No-volátil: Read Only Memory (ROM), solo lectura:» Máscara ROM "mask programmable"» EPROM "electrically programmable"» EEPROM "erasable electrically programmable"» FLASH memory - similar a EEPROM con programador integrado en el chip. * Permite escrituras de memoria. La información no se pierde al desconectar la alimentación. 10-9-2007 10

Célula de RAM estática Célula SRAM 0 1 Selector de fila Lectura: 1. Seleccionar fila 2. La célula de memoria pone una linea a low y la otra a high 3. Salida sobre bit y bit Escritura: 1. Ajustar lineas bit (p.e. bit=1, bit=0) 2. Seleccionar fila Como funciona? bit 0 Cuando una linea de bit es low, fuerza la salida a high ; esta operación cambiará el estado al seleccionar columna, si el nuevo estado es diferente, sino, quedaría igual. 10-9-2007 11 1 bit

Ejemplo de SRAM: 16- palabras x 4-bits Din 3 Din 2 Din 1 Din 0 WrEnable Wr Driver - + SRAM Cell SRAM Cell SRAM Cell Wr Driver - + SRAM Cell SRAM Cell SRAM Cell Wr Driver - + SRAM Cell SRAM Cell SRAM Cell Wr Driver - + SRAM Cell SRAM Cell : : : : SRAM Cell - Sense Amp+ - Sense Amp+ - Sense Amp+ - Sense Amp+ Word 0 Word 1 Word 15 Decodificador de direcciones A0 A1 A2 A3 Dout 3 Dout 2 Dout 1 Dout 0 10-9-2007 12

Ejemplo: ST microelectronics M68AW256M http://www.st.com/stonline/products/literature/ds/7996/m68aw256m.pdf 10-9-2007 13

DRAM Memoria RAM dinámica SRAM Sistemas de almacenamiento tipo básculas Más rápidas? - Si, acceso a dato más rápido. Más caras por unidad de información (al ser más complejas) Capacidades de almacenamiento menores DRAM Guarda el dato en forma de carga de un condensador La información desaparece tras un periódo de tiempo. Debe ser refrescada, o lo que es lo mismo, reescrita / recargada Condensador que retiene carga Un transistor actua como puerta Sin carga, almacena un 0, con carga 1 Se lee cerrando la puerta La lectura es destructiva» Cuando una célula se lee, pierde carga» Debe ser restaurada después de una lectura Refresco» También hay pérdidas de carga por fugas» La carga debe ser restaurada periódicamente Tamaño muy pequeño de célula o unidad de memoria 10-9-2007 14

DRAM Memoria RAM dinámica DRAM Ventaja principal Al ocupar una célula muy poco sitio, las más altas densidades de memoria de consiguen con DRAM, ejemplo memorias de ordenador. Mejor relación capacidad / precio mejor. DRAM Inconveniente Requiren operaciones de refresco periódicas. 10-9-2007 15

Read Only Memory (ROM) Forma simplificada de memoria. No se puede escribir. Equivalencia funcional: Conexiones a Vdd para guardar un 1 lógico, a GND para guardar un 0. Decod. direcciones Array de celula-bit Se programan en fabricación según petición a fabricante. Otras son OTP (One Time Programming), solo se pueden programar una vez y se hace destruyendo electricamente las uniones a 1 o 0 y de esta forma se establece el dato fijo. 10-9-2007 16

Memoria no volátil Se usa para guardar datos y código fijo (p.e. BIOS), tablas de datos (p.e nuevos estados en salidas de FSM), valores que no sufren muchos cambios y deseamos que permanezcan después de apagados (flash, eeprom.) ROM de máscara Datos, programas, tablas, etc, fijas y permanentes. Se fabrica grabada por encargo o se escribe una vez. EPROM, EEPROM (erasable programmable) y FLASH Requiere procesos especiales para escritura Número limitado de grabaciones, entre 10.000 y 100.000 La escritura es mucho más lenta que la RAM. Las EPROM usan sistemas de programación especiales (tensión, tiempos). La lectura si es un proceso rápido. La reescritura en caso de Flash puede requerir procesos especiales y claves que hacen más complicadas estas tareas.» Las EPROM requieren borrado mediante luz ultravioleta (sustituidas por EEPROM y Flash).» Las EEPROM de borran con tensiones especiales. 10-9-2007 17

Memoria no volátil Ejemplo de programación mediante uniones o fusibles en una PROM, una vez que se graba, no se puede borrar la información. Las x corresponden a fusibles intactos (continuidad - 1 ) y los cruces no tienen continuidad ( 0 ), al seleccionar la fila. 10-9-2007 18

Memorias: Uso e incorporación a circuitos Direcciones (A0...An) Memoria 16K x 4 CS OE R/#W Memoria Datos (D0-Dn) - Direcciones A 0 A 13 - Datos: D 0 D 3 16.384 posiciones de 4 bits Las memorias tienen lineas de direcciones para indicarnos la posición del dato a leer o a escribir. La capacidad de la memoria en posiciones es 2 n. Por ejemplo, si una memoria tiene 16 lines de direcciones tendría 2 16 posiciones, o sea 65536. Son unidireccionales. Las lineas de datos nos ofrecen los datos leidos o en ellas ponemos los datos a grabar, siempre respecto a una posición. El número de lineas nos indica la cantidad de bits que podemos almacenar por posición. Por ejemplo, 8 lineas de datos (D 0 -D 7 ) nos indicaría que en cada posición puedo almacenar 8 bits. Son bidireccionales. El resto de las lineas, son de control, pueden variar, pero casi siempre existe CS (chip select) para activar el chip. Si se puede escribir (RAM), existirá también una linea para indicar cuando la operación que queremos realizar es de lectura o de escritura (R/#W). En cualquier caso se consultará el datasheet del chip para ver toda su funcionallidad. 10-9-2007 19

Ampliando las necesidades de memoria Que ocurre si necesitamos un ancho de datos mayor? - Si necesitamos 16 bits de ancho en lugar de 8 bits de un chip determinado, podemos agrupar varios chips como uno más ancho. - Las direcciones y lineas de control son comunes a los dos chips. Memoria 64K x 16-2 Chips 64K x 8 - Direcciones: - A0 A15 comunes - Datos: -Chip 1 -> D 0 D7 -Chip 2 -> D8 D15 -Líneas de control: - Chip select - Read / #Write Comunes a todos los chips Chips en PARALELO 10-9-2007 20

Ampliando las necesidades de memoria Que ocurre si necesitamos mayor cantidad de datos? - Si necesitamos más cantidad de datos, sin modificar el ancho de palabra (bits datos), podemos agrupar varios chips para ocupar más posiciones de memoria. - Las lineas de datos son comunes, las de direcciones suelen serlo y las de control determinan el mapa de memoria final. Almacén 1000 x 4-4 Almacenes 1000 pos. - Direcciones: - N0,N1N2 comunes - Salidas: Comunes -Líneas de control: - N3 (dígito miles) - Selecc Almacén : - Determina almacén activado - En el ejemplo, los tres dígitos de menor valor (527) establecen la posición que vamos a ver en el almacén, pero solo el dígito de mayor valor determina de que almacén cogeremos el dato (2). MAPA DE ALMACÉN 0-999 -> Almacén 0 1.000 a 1.999 -> Almacén 1 2.000 a 2.999 -> Almacén 2 3.000 a 3.999 -> Almacén 3 10-9-2007 21

Ampliando las necesidades de memoria Memoria 256K x 8-4 Chips 64K x 8 - Direcciones: A0 A15 comunes - Datos: Comunes - Líneas control: R/#W (común) - Chip Select : - Determina que chip se activa - Un decodifiacor extrae de las lineas A16 y A17 la información de que chip tenemos que activar, es como las unidades de millar del ejemplo anterior, en este caso son las unidades o grupos de 64K es decir, 2 16 por A0 a A15. MAPA DE MEMORIA 00000 a 0FFFF -> CS- 0 10000 a 1FFFF -> CS- 1 20000 a 2FFFF -> CS- 2 30000 a 3FFFF -> CS- 3 Circuito Equivalente Memoria 256K x 8 10-9-2007 22

Ampliando las necesidades de memoria Agrupando memorias -El grupo debe comportarse como una memoria única. -Las direcciones llegan a todos los chips. -Las señales R/W van a todos los chips. -Existe un sistema combinacional que determina, según el mapa de memoria a implantar, que chip debe seleccionar. - Solo se puede activar un chip cada vez. -Cada CS tiene una fórmula lógica. -Suele ser conveniente agrupar las memorias de forma contínua, sin dejar huecos. - Se pueden agrupar RAM, ROM, EPROM, siempre que se respete la funcionalidad. - Por ejemplo, se puede montar una ROM de 16 K y 3 chips de 16K de RAM, cubriendo un mapa de memoria de 64K. 10-9-2007 23

Ampliando las necesidades de memoria Ejercicio memorias - Dibujar esquema del circuito con el siguiente mapa de memoria usando las memorias 2716 y 6116. - El ancho del bus de datos deseado es de 8 bits. 0x0000 0x07FF 0x2000 0x27FF 2K (EPROM) memoria 2716 2K (EPROM) memoria 2716 Resolución del problema - Determinar características (datasheet) de los chips. - Ver pines a conectar en cada chip. - Determinar el número de chips a colocar. - Realizar tabla verdad de CS por chip. - Determinar esquema de selección de chips. Es conveniente realizar otros ejercicios con diferentes mapas de memoria y diferentes chips. 0xE800 0xFFFF (RAM) memoria 6116 MAPA DE MEMORIA 10-9-2007 24

Qué pasa cuando nº posiciones es muy grande? Decodificador de registro grande y lento Lineas de bit largas Carga RC alta, implica menos velocidad de transición en datos. Por ejemplo: 8Mb 23 líneas Lineas Addr Log2 (posiciones) n bits La lógica y geometría es muy estrecha y muy larga, por ejemplo 8 x 8.388.608 Hay que hacerlas más anchas y cortas! Para conseguirlo se implementan arrays de células de memoria 2D. Geometría mejorada. Acceso más rápido. Menos RC parásitas. Pistas más cortas. Velocodad superior. Diseño más racional. 10-9-2007 25

Ejemplo: Memoria 2M x 8 Cypress CY62168 8192 Filas x 256 Columnas Array 2D A0..A12 + A13..A20 10-9-2007 26

A27-A0 (en dos tandas de 14 lineas) Tenemos 28 bits de direcciones en dos trozos de 14 bits y cuando es mucho más grande? filas RAS Registro Registro Row Row Address Address columnas Registro Registro Column Column Address Address CAS 14 \ 14 \ Decodif. Decodif. Filas Filas 16K Filas Las Las lineas lineas address address se se reducen reducen a a la la mitad mitad Array Array 16Kx16K 16Kx16K Células Células Decodif. Decodif. Columnas Columnas Dout 16K Columnas 10-9-2007 27 CS R/W Interfaz Interfaz memoria memoria RAS = Row Adress Strobe, CAS = Column Adress Strobe Con RAS se indica que la primera mitad de la dirección (Row=Fila) está disponible y es correcta, entonces se lee la fila y mientras llega la segunda mitad de la dirección (Column=columna) y cuando está cargada se activa el CAS y se selecciona la columna. Din

Lectura memoria usando CAS y RAS Direccionamiento mediante RAS y CAS Direccionamiento en dos ciclos o fases: Direccionamiento de fila (Row Address) Direccionamiento de columna (Column Address) Ciclo de de Lectura Ahorra pines direcciones, las divide por la mitad. Acceso rápido direcciones Contiguas (misma fila) Lee dirección fila Guarda dirección fila Establece columna Completa dirección Salidas Tri-estado 10-9-2007 28

Memorias FLASH Son memorias de solo lectura reescribibles. Gran implantación en la actualidad. Pen-drives, reproductores MP3, MP4, tarjetas memoria, etc. Borrable eléctricamente y programable en sistema (ISP) Circuitería en el chip que controlan las tensiones necesarias para borrar y programar los datos Los borrados se realizan por sectores (16K - 64K Bytes) Las tarjetas SD, Compact flash, ets. Se basan en estas memorias La escritura no se realiza igual que la RAM, requiere codificaciones especiales. El número de escrituras posibles no es ilimitado y no se garantiza a partir de un número especificado por el fabricante. 10-9-2007 29

Memorias: Características a tener en cuenta Latencia (tiempo de acceso) El intervalo de tiempo entre el instante en que se solicita la lectura (READ) o se solicite una escritura (WRITE) y el instante en el que la lectura se entrega o se completa la grabación. Tiempo de ciclo El tiempo transcurrido entre el instante en que se accede a la memoria y el instante en el que se puede acceder de nuevo a la memoria. Ancho de banda (throughput) Cantidad de datos que pueden ser leidos o escritos en la unidad de tiempo. Inversamente proporcional al tiempo de ciclo Como mejorar estas características La latencia puede ser reducida: Seleccionando chips con memores tiempos de acceso Usando memoria caché (se verá en temas posteriores A.S.I.) El Ancho de Banda puede ser incrementado: Bus de datos más ancho (más chips en paralelo) Más pines de datos por chip seleccionado (memorias con bus datos más ancho) Seleccionando chips más rápidos. 10-9-2007 30

Mapas de memoria Memoria que es capaz de direccionar un dispositivo que usa memoria microprocesador, microcontrolador, etc. Distribución de la misma, es decir qué direcciones ocupan los diferentes dispositivos destinados a funciones determinadas con respecto al dispositivo. Nota: A veces los mapas de memoria incluyen hardware como si fuese una memoria de lectura / escritura. La especificación del mapa de memoria se puede realizar cómo: Funcional: ubicación (direcciones) de los elementos (hardware o software) del sistema digital, atendiendo a la función de los mismos. Así se describirán la ubicación de: sectores de programa, posición de datos generales y tablas, registros de interfaz, etc. Físico: correspondencia entre las direcciones del mapa y los dispositivos físicos en el que se plasman. De acuerdo a él se realizará la conexión entre los diferentes dispositivos, teniendo en cuenta la estructura del bus de direcciones y del bus de datos, la forma de selección de dispositivos, etc. 10-9-2007 31

Mapas de memoria Mapa de Memoria Funcional Físico Direccione s Programa y tablas de datos fijos. Pastilla ROM de 8Kbytes. Circuito Integrado tipo... 0x0000 0x1FFF Zona vacía (Ningún chip 0x2000 - - - acupa estas posiciones) 0x3FFF Registros varios: 0x4000 Circuitos 0x403F Dispositivos de Integrados(registros) Entrada/Salida Display LCD, de 64 caracteres... Zona vacía - - - 0x4400 0x8FFF DIRECCIÓN BASE Teclado hexadecimal y registros auxiliares. Teclado de membrana: modelo... 0x9000 0x9003 Zona vacía - - - 0x9004 0xBFFF Variables y tablas temporales(4kbytes) Zona de datos transferencia serie (4Kbytes). Pastilla RAM de 8Kbytes C.I. tipo... 0xC000 0xCFFF 0xD000 0xDFFF 10-9-2007 32

Mapas de memoria Tareas fundamentales: Diseño del mapa funcional, donde se decide en que direcciones del mapa se van a colocar las diferentes zonas de memoria y variables del sistema. Puede venir dado por las características del dispositivo. Diseño del mapa lógico donde se seleccionan los dispositivos más adecuados para cumplir el mapa de memoria. Diseño de la lógica de selección para acceder a la celda o posición de memoria deseada y no a otras. Activar los elementos que intervienen en la operación y seleccionar (CS) el dispositivo adecuado. A partir de una dirección que aparece en el bus, activa la línea de selección del chip al que corresponde dicha dirección. Puede diseñarse empleando puertas lógicas, decodificadores, etc, o empleando dispositivos programables como PLD, PAL, etc. 10-9-2007 33

Mapas de memoria Proceso Tener en cuenta la dirección base Reconocer la función de los diferentes bits de direcciones. P.e. para el elemento (pastilla RAM de 8 Kbytes) las líneas A[12..0] se necesitan para seleccionar la posición deseada dentro del chip, y por tanto pueden presentar cualquier código, lo que se representa como XX...X. El resto de las líneas A[15..13], para que la dirección presente en el bus se corresponda a este chip, deben presentar el código 1 1 0 ", C000 h a DFFF h A[12:0] R/W# CS# OE# MEM. Bus de datos D[n-1:0] 10-9-2007 34

Mapas de memoria Decodificación completa: Se emplea este término cuando el acceso a una posición concreta de memoria se puede realizar sólo para una única combinación de los bits del bus de direcciones; esto es: {una posición física = una dirección lógica}. Decodificación incompleta: Se corresponde a aquella situación en la que el acceso a una posición concreta de memoria se puede producir con varias combinaciones diferentes de los bits del bus de direcciones: {una posición física = varias direcciones lógicas}. 10-9-2007 35