TERMINOLOGÍA DE LA MEMORIA Celda de Memoria .− Dispositivo o circuito eléctrico que se usa para almacenar un solo bit(0 o 1), ejemplos de celdas de memoria son: un flip−flop, un capacitor con carga, y un solo canal en cinta o en disco magnéticos. Palabra de Memoria .− Grupo de bits(celdas) en una memoria que representa instrucciones o datos de algún tipo. Byte .− Término especial que se usa para una palabra de 8 bits. Capacidad .− Forma de especificar cuántos bits pueden almacenarse en un dispositivo de memoria particular o bien en un sistema de memoria completo. Dirección .− Número que identifica la localidad de una palabra en la memoria. Cada palabra almacenada en un dispositivo de memoria o sistema de memoria tiene una dirección única. Las direcciones siempre se especifican como un número binario, aunque algunas veces se utilizan números octales, hexadecimales, y decimales por conveniencia. Operación de lectura .− La operación con la cual la palabra binaria almacenada en una localidad (dirección) específica de la memoria es captada y después transferida a otro dispositivo. Operación de escritura .− Operación por medio de la cual se coloca una nueva palabra en cierta localidad de la memoria. También se llama operación de almacenar. Tiempo de acceso .− Es la cantidad de tiempo que se requiere para realizar una operación de lectura(medida de la velocidad). Memoria volátil .− Cualquier tipo de memoria que requiere la aplicación de energía eléctrica a fin de almacenar información. Memoria de acceso aleatorio (RAM) .− Memoria en la cual la localización física real de una palabra de la memoria no tiene efecto sobre tiempo que se tarda en leer de esa localidad o bien escribir en ella. Memoria con acceso secuencial (RAM) .− Tipo de memoria en la cual el tiempo de acceso no es constante, sino que varia según la localidad de la dirección. Memoria de lectura y escritura (RWM) .− Cualquier memoria de la que se puede leer información o bien escribir en ella con la misma facilidad. Memoria sólo de lectura (ROM) .−Extensa clase de memorias de semiconductor diseñadas para aplicaciones donde la proporción de operaciones de lectura a operaciones de escritura es muy alta. En términos técnicos, en una ROM sólo puede escribirse(programarse) una vez y esta operación normalmente se efectúa en la fábrica. Dispositivo de memoria estática .− Dispositivos de memoria de semiconductor en los cuales los datos almacenados se quedarán permanentemente guardados en tanto se aplique energía, sin necesidad de escribir periódicamente los datos en memoria. Dispositivos de memoria dinámica .− Dispositivos de memoria de semiconductor en los cuales los datos 1 almacenados no se quedarán permanentemente guardados aun con energía aplicada. Memoria interna .− También recibe el nombre de memoria principal de la computadora. En ella se guardan las instrucciones y datos sobre los que el CPU trabaja. Memoria secundaria .− Este tipo de memoria también se conoce como memoria auxiliar. Almacena grandes cantidades de información externa a la memoria interna de la computadora. OPERACIÓN GENERAL DE LA MEMORIA Aunque cada tipo de memoria es diferente en su operación interna, ciertos principios básicos de operación son los mismos para todos los sistemas de memoria. Todo sistema de memoria requiere varios tipos diferentes de líneas de E/S para desempeñar las funciones siguientes: • Seleccionar la dirección de la memoria a la que se quiera tener acceso para una operación de lectura o escritura. • Seleccionar una operación de lectura o bien de escritura para ser efectuada. • Proporcionar los datos de entrada para ser almacenados en la memoria durante una operación de escritura. • Retener los datos de salida que viene de la memoria durante una operación de lectura. • Habilitar (o deshabilitar) la memoria de manera que responda (o no) a las entradas de dirección y al comando de lectura /escritura. MEMORIA DE SOLO LECTURA (ROM). Las memorias de solo lectura son un tipo de memoria de semiconductor que están diseñadas para retener datos que son permanentes o que no cambian con mucha frecuencia. Durante la operación normal, no pueden escribirse nuevos datos en una ROM pero si se puede leerse información de ella. El proceso de grabar datos se conoce como programación de la ROM . Las ROMs se utilizan para almacenar datos e información que no cambiara durante la operación normal de un sistema. Ya que todas las ROM son volátiles, estos programas no se pierden cuando la microcomputadora es desconectada. Cuando se enciende el programa de inmediato puedes empezar a ejecutar el programa almacenado en ROM. DIAGRAMA DE BLOQUES EN ROM Tiene tres conjuntos de señales: entradas de dirección, entrada(s) de control y salidas de datos. Las salidas de datos de muchos circuitos integrados de ROM son salidas de tres estados para permitir la conexión de muchos circuitos ROM al mismo canal de datos para lograr la expansión de la memoria. La entrada de control CS significa selección de C.I . Esta es esencialmente una entrada de habilitación que habilita o deshabilita la salida ROM. LA OPERACIÓN DE LECTURA Afin de leer una palabra una palabra de datos de la ROM necesitamos hacer dos cosas: aplicar las entradas de dirección adecuadas y luego activar las entradas de control. 2 ARQUITECTURAS DE LA ROM La arquitectura (estructura) de un CI ROM es muy compleja, y no necesitamos conocer todos sus detalles. Sin embargo, es constructivo observar un diagrama simplificado de la estructura interna. ARREGLOS DE REGISTROS El arreglo de registros almacena los datos que han sido programados en la ROM. Cada registro contiene un numero de celdas de memoria que es igual al tamaño de la palabra . En este caso, cada registros almacena una palabra de 8 bits. Los registros se disponen en un arreglo de matriz cuadrada que es común a muchos circuitos de semiconductor. Las 8 salidas de datos de cada registro se conectan a un canal de datos internos que corre a través de todo el circuito. Cada registro tiene dos entradas de habilitación (E); ambas tienen que ser ALTAS a fin de que los datos del registros sean colocados en el canal. DECODIFICADORES DE DIRECCIONES El código de dirección aplicado A3 A2 A1 A0 determina que registros será habilitado para colocar su palabra de datos en 8 bits en el canal. Los bits de dirección A1 A0 se alimentan a un decodificador 1 de 4 que activa una línea de selección de renglón, y los bits de dirección A3 A2 se alimentan a un segundo decodificador 1 de 4 que activa una línea de selección de columna. Solamente un registro estará en el renglón y la columna seleccionados por las entradas de dirección y este estará habilitado. BUFFERS DE SALIDA El registro habilitado por las entradas de selección coloca el dato que tiene sobre el canal de datos. Estos datos entran en los buffers de salida, mismos que se encargan de trasmitirlos hacia la salida externas siempre y cuando CS este en BAJO. Si esta en ALTO, los buffers de salida se encuentran en el estado de alta ímpedencia, con lo que D7 hasta D0 estará flotando. TIPOS DE ROMs Ahora que tenemos un conocimiento general de la arquitectura interna y operación externa de los dispositivos ROM, veremos brevemente los diversos tipos de ROMs para observar como difieren en la forma en que son programados, borrados y reprogramados. ROM PROGRAMADA PARA MASCARILLA Este tipo de ROM tiene sus localidades de almacenamiento escritas (programadas ) por el fabricante según las especificaciones del cliente. Se utiliza un negativo fotográfico llamado mascarilla para controlar las conexiones eléctricas en el circuito. La ROM tendría que ser reemplazada por una nueva con el programa deseado escrito en ella. Se han creado varios tipos de ROMs programables para el usuario, para superar esta desventaja sin embargo, las ROMs programadas por mascarilla todavía representan el enfoque más económico cuando se necesita una cantidad considerable de ROMs identificadamente programadas. Las MROMs bipolares se encuentran disponibles en varias capacidades, todas ellas pequeñas. Una de las mas populares es la 74.187, la cual se encuentra organizada como una memoria de 256*4, y tiene un tiempo de acceso de 40 ns. 3 ROM programables (PROM) . Una ROM programable por mascarilla es muy costosa y no se utilizara excepto en aplicaciones de grandes volúmenes, donde el costo será repartido sobre muchas unidades. Los fabricantes han creado PROMs con conexión fusible, que no se programa durante el proceso de fabricación si no que son programadas por el usuario. La estructura de la PROM con conexiones fusibles es muy semejante ala MROM en cuanto que ciertas conexiones quedan intactas o bien son abiertas a fin de programar una celda de la memoria como 1 o 0 respectivamente. Una vez que se han programado todas las direcciones deseadas de esta manera, los datos estarán permanentemente almacenados en la PROM y podrán ser leídos una y otra vez la dirección apropiada. El proceso de programar una PROM y verificar que los datos almacenados son correctos, es raramente hecho a mano; en lugar de ser asi, se hace automáticamente por un aparato especial llamado programador de PROMs. Los datos a ser almacenados dentro de la PROM , son ingresados al programador desde un teclado. ROM programable y borrable ( EPROM ) . Una EPROM puede ser programada por el usuario y también puede borrarse y reprogramarse tantas veces como se desee. El proceso de programación generalmente es efectuado por un circuito especial de programación que esta separado del circuito en el cual la EPROM eventualmente trabajara. En una EPROM las celdas de almacenamiento son transistores MOSFET que tienen una compuerta de silicio sin ninguna conexión eléctrica( es decir una compuerta flotante). Una vez que se ha programado una celda de la EPROM, se puede borrar su contenido exponiendo la EPROM ala luz ultravioleta (UV), la cual se aplica a través de la ventana que se encuentra sobre el encapsulado del circuito. La luz ultravioleta produce una fotocorriente que va desde la compuerta flotante hacia el sustrato de silicio; La luz ultravioleta(UV) borra todas las celdas al mismo tiempo por lo que en una EPROM borrada almacena solamente unos lógicos. Las EPROM se encuentran disponibles en el mercado en una amplia gama de capacidades y tiempos de acceso; es común encontrar dispositivos con una capacidad de 128K * 8 y un tiempo de acceso de 45ns. Las EPROM se diseñaron originalmente para ser empleadas en aplicaciones de investigación y desarrollo, donde es muy común la necesidad de alterar cierto número de veces el programa almacenado. También tiene sus inconvenientes que son: 1.−hay que sacarlas de su circuito para borrarlas y reprogramarlas; 2.−la operación de borrado borra todo el microcircuito no hay forma de seleccionar solo ciertas direcciones que se desean borrar. 4 3.−el trabajo típico de borrar y reprogramar puede requerir de 20 minutos o mas. PROM eléctricamente borrable (EEPROM) Las ventajas de la EPROM se eliminaron con la producción de la PROM eléctricamente borrable (EEPROM)que fue una mejora con respecto de la EPROM. La EEPROM conserva la estructura de una compuerta flotante de la EPROM pero con la inclusión de una región muy delgada encima del electrodo de drenaje de la celda de memoria MOSFET. Otra ventaja de la EEPROM con respecto de la EPROM es la facilidad de borrar y volver a programar eléctricamente bytes individuales (palabra de 8 bits) en la matriz de memoria. Esta facilidad de borrar memoria bytes facilita mucho efectuar cambios en los datos almacenados en una EEPROM. Las primeras EEPROMS, como las 2816 de Intel, requerían un circuito adecuado de soporten en el exterior de los microcircuitos de memoria. La facilidad para borrar bytes de la EEPROM y su alto grado de integración viene acompañados de dos aspectos negativos: densidad y costos. La complejidad de las celdas de memoria y los circuitos de soporte en el microcircuito integrado hacen que las EEPROMs vayan muy a la zaga de la EPROM en capacidad de bits por milímetro cuadrado de silicio. Para escribir (programar) en una localidad de la memoria, se deshabilitan los buffers de salida a fin de que los datos que se van a escribir se puedan aplicar como entradas a las terminales de E/S. La 2864 tiene un modo de escritura acrecentado, que permite al usuario escribir hasta 16 bytes de datos en la memoria intermedia de flip−flop, donde es retenida mientras el circuito de la EEPROM borre las localidades de la memoria. Luego, los 16 bytes de datos se transfieren a la matriz de EEPROM para ser almacenados en esas localidades. Este proceso también requiere alrededor de 5 ms. MEMORIAS INSTANTÁNEAS Las EPROMs no son volátiles, ofrecen tiempos cortos para acceso (típicamente 120 ms) y tiene alta densidad y bajo costo por bit. No obstante, es necesario extraerlas de sus sistemas de circuitos para borrarlas y reprogramarlas. El reto para los ingenieros especialistas en semiconductores fue fabricar una memoria no volátil, con la facilidad para borrar con electricidad en el circuito de las EPROMs, reteniendo a la vez el acceso de alta velocidad para lectura de ambas La respuesta a este reto fue la memoria instantánea o de ráfaga. Las memorias instantáneas o de ráfaga se llaman así por sus muy cortos tiempos para borrar y escribir. La mayor parte de los microcircuitos para estas memorias incluyen una operación de borrado masivo en la que todas las celdas del microcircuitos se borran en forma simultanea. Una memoria instantánea típica tiene un tiempo de escritura de 10 us por byte comparada con 100us para la EPROM mas avanzada y 5ms para EEPROM ( que incluye tiempo para borrado automático de un byte ala vez) EL CI 28F256A CMOS de memoria instantánea 5 Las entradas de control CE , OE, WE manejan lo que ocurre en las terminales de datos casi en la misma forma que para la EEPROM 2864, estas terminales de datos por lo general están conectados a un canal de datos. Durante una operación de escritura, se transfieren los datos por el canal, por lo general desde el microprocesador y hacia adentro del microcircuito. Durante una operación de lectura, los datos del microcircuito se transfieren por el canal de datos, generalmente al microprocesador. El funcionamiento del microcircuito de esta memoria instantánea podrá comprenderse mejor si se examina su estructura interna. La lógica del control del estado examina el contenido de este registro y genera señales lógicas y de control para el resto de los circuitos en el microcircuito para ejecutar los pasos de la operación. Ahora veamos cómo esto se aplica para algunos de los comandos u ordenes. COMANDO DE LECTURA Para preparar el microcircuito para operaciones de lectura, primero es necesario escribir todos los ceros (000000002 = 0016 ) en el registro de comandos. Esto se ha aplicado 0016 a las terminales de datos y aplicando pulsos a WE para que se vaya BAJA mientras que CE=BAJA y OE=ALTA. Los datos de la memoria se leen en la forma usual: (1) aplique la dirección de la cual se léera; (2) coloque WE=ALTA y CE=BAJA y aplique pulsos a OE para que se vaya a baja afín de habilitar las memorias intermedias de salida para que pasen los datos desde la matriz de la celda hasta las terminales de salida de datos. COMANDOS DE ESTABLECER BORRADO Y BORRAR. Para borrar todo el contenido de la matriz se requieren dos pasos: (1) escribir el código 2016 en el registro de comandos a fin de establecer el microcircuito para la operación de borrar y (2) volver a escribir el código 2016 en el registro de comandos para iniciar la operación de borrado. COMANDO DE COMPROBAR BORRADO Después de la operación de borrado es necesario comprobar que se hayan borrado todas las celdas de memoria; es decir, que todos los bytes= 111111112 = FF16. Esta operación de comprobar el borrado se debe efectuar en cada dirección de byte. Para iniciarla se escribe AO16 en el registro de comandos. ESTABLECER PROGRAMA / COMANDOS PARA ELPROGRAMA. El dispositivo se puede establecer para programación por bytes si se escribe el código 4016 en el registro de comando. Esto continúa, escribiendo los datos que se van a programar en la dirección deseada. COMANDO DE COMPROBAR EL PROGRAMA. Después de haber programado un byte en una dirección, se debe comprobar el contenido de la dirección para tener la certeza de que se ha programado exitosamente. Para ello, primero se escribe el código CO16 en el registro de comandos para iniciar la operación de comprobación, luego se continua con una operación de lectura, afin de poder comprobarlos con los datos deseados. APLICACIONES DE LA ROM Las ROM pueden utilizarse en cualquier aplicación que requiera almacenamiento de datos no volátil, donde estos rara vez o nunca tengan que ser alterados: Almacenamiento de programas en microcomputadoras programación en firme(firmware) 6 Las microcomputadoras personales y de empresas usan ROM para almacenar sus programas de sistema operativo y sus intérpretes de lenguaje (BASIC). Los productos que tienen una microcomputadora para controlar su operación utilizan ROM para almacenar programas de control. Los programas de microcomputadora que se almacenan en ROM se conocen como programas firme(firmware) ya que no están sujetos a cambios. MEMORIA DE ARRANQUE Muchas microcomputadoras y la mayor parte de las computadoras grandes, no guardan sus programas de sistema operativo en ROM. En lugar de ello, dichos programas están guardados en memoria externa, por lo general en disco magnético. En la ROM se guarda un pequeño programa de aranque. Cuando se prende la PC, ésta ejecuta las instrucciones que se encuentran en el programa. TABLAS DE DATOS Las ROM se usan para almacenar tablas de datos que no varían. Algunos ejemplos de éstas son las tablas trigonométricas(sen, cos, etc). CINVERTIDOR DE DATOS El circuito convertidor de datos toma un dato expresado en cierto código y produce como salida el mismo dato pero en otro código. Por ejemplo, la conversión de código se necesita cuando una computadora saca datos en código binario y se desea convertirlo en BCD a fin de exhibirlo en exhibiciones LED de 7 segmentos. GENERADORES DE CARACTERES Si el lector alguna vez ha observado de cerca caracteres alfanuméricos (letras, números, etc) impresos en el monitor de una PC, seguro a notado que cada uno se forma en términos generales, con un grupo de puntos. Una ROM generadora de caracteres almacena los códigos del modelo de puntos por cada carácter ubicado en una dirección correspondiente al código ASCII de ese carácter. GENERADOR DE FUNCIONES El generador de funciones es un circuito que produce formas de onda tales como ondas senoidales, diente de sierra, triangulares y cuadradas. La ROM guarda 256 distintos valores de ocho bits que corresponden cada uno a un valor diferente de la forma de onda(a un punto con diferente voltaje sobre la onda). DISPOSITIVOS LOGICOS PROGRAMABLES Los diseñadores lógicos tienen una amplia gama de CIs disponibles con numerosas funciones lógicas y arreglos de circuitos sobre el mismo CI. Sin embargo existen algunos problemas con los diseños de circuitos y sistemas que utilizan solo Cis estándares. Algunos diseños pueden requerir de cientos o miles de estos Cis. La reducción de los Cis empleados en un diseño pueden tener varias ventajas: menos espacio sobre la tarjeta, lo que significa menos espacio sobre la tarjeta, lo que significa menos tarjetas de circuito impreso y gabinetes mas pequeños. 7 Para reducir el numero de Cis utilizados en un diseño, es necesario colocar cada vez mas funciones lógicas sobre un CI. Esto por supuesto se hace con tecnologías LSI y VLSI para funciones estándar tales como las memorias, microprocesadores, sintetizadores de voz, calculadoras y haci sucesivamente. El reciente desarrollo de los dispositivos lógicos programables (PLDs) ofrece a los diseñadores lógicos una manera de remplazar varios Cis estandares con un solo CI. Se dice que el CI es programable porque la función especifica que este realice en una determinada aplicación esta determinada por la interrupción selectiva de algunas de las conexiones mientras que al mismo tiempo se dejan otras intactas. IDEA BASICA Esta muestra un arreglo de compuertas AND y otro de compuertas OR que se pueden conectar entre si para generar cuatro salidas, cada una de las cuales puede ser cualquier función lógica de las dos variables de entrada AyB. Cada entrada alimenta dos buffers, uno no inversor y otro inversor para producir las formas verdaderas y negada de cada variable. estas son las líneas de entrada hacia el arreglo de compuertas AND. Cada una de las líneas producto esta conectada, mediante una conexión fusible, a una de ls cuatro entradas que tiene cada compuerta OR cuando todas las condiciones iniciales están intactas la salida de cada compuerta OR será un 1 constante. SIMBOLOGIA DEL PLD Usted se puede imaginar la complejidad del diagrama correspondiente a un PLD que tiene una cantidad mayor de entradas. Las conexiones que vienen de las líneas de entradas para variables y que van hacia la compuerta AND están señaladas con una X o con un punto. Una X representa una conexión fusible intacta. Un punto representa una conexión alambrada ( es decir, que no puede cambiarse). La ausencia de cualquiera de estos dos símbolos significa que no tiene conexión. ARQUITECTURA DEL PLD−−− la PROM Existen varias arquitecturas comunes utilizadas para los PLD. Escriba los productos AND para aquellos casos donde la salida es 1, la salida0 es la suma de OR de estos productos. De este modo, quedaran intactas solo aquellas conexiones fusibles en las entradas de las demas compuertas OR. La PROM puede generar cualquier cualquier función lógica posible de las variables de entrada debido a que genera todos los términos AND posibles. Un ejemplo de una PROM real que se emplea con frecuencia como PLDes la AM27S13, que es una PROM de 512 * 4 fabricada con tecnología Schottky TTL de alta velocidad dado que 512=2^9, esta PROM tiene nueve entradas para las direcciones y cuatro para dar salida a los datos. LOGICA EN UN ARREGLO PROGRAMABLE (PAL) La arquitectura de una ROM es muy apropiada donde se requiere cualquier combinación de las entradas para 8 generar las salidas. Ejemplo de esto son los convertidores de código y las tablas para almacenar datos La PAL tiene los mismos arreglos AND y OR que las PROMs pero en la PAL son programables las entradas de las compuertas AND mientras que las compuertas OR son alambradas. Esto significa que se puede programar cualquier compuerta AND para generar cualquier producto deseado de las cuatro variables de entrada junto con sus respectivos complementos. El primer paso es expresar esta salida como la suma lógica de cuatro terminos debido a que las compuertas OR tienen cuatro entradas. Esto lo hacemos poniendo los ceros. El siguiente paso es determinar como programar las entradas de las compuertas AND 1,2,3 y 4 de forma que estas proporcionen los productos lógicos correctos para las compuertas OR numero tres. Las entradas a las demás compuertas AND se programan de manera similar para generar otras funciones lógicas de salida, en particular. Observese que las entradas de muchas de las compuertas AND tienen todas sus conexiones fusibles intactas, debido a que es necesario que dichas compuertas generan ceros. ARREGLOS LÓGICOS PROGRAMABLES (PLAs) Una PLA combina las características de la PROM y el PAL proporcionado tanto un arreglo OR programable como un arreglo AND también programable. FUSIBLE DE POLARIDAD Muchos PLDs incluyen una característica de polaridad programable de salida que brinda al diseñador la opción de invertir cualquiera de las salidas. OTRAS CARACTERÍSTICAS DE LOS PLD Muchos PLDs incluyen uno o mas de los siguientes componentes como parte de su arquitectura. FFs, registros básicos, requiere de entraday registros de salida. Lo anterior da al diseñador lógico una mayor flexibilidad en el diseño de contadores y otros circuitos lógicos secuenciales. Algunas veces este tipo de PLD recibe el nombre de secuenciador lógico programable. PROGRAMACIÓN Cuando los PLDs fueron introducidos por primera vez, el diseñador lógico tenia que desarrollar un mapa de conexiones fusibles que mostraba las conexiones que debía quemarse y lo enviaba al fabricante de la PROM o FPLA. El dispositivo que va a programarse se coloca en la base del programador: este programa y prueba que el dispositivo este de acuerdo con los datos que fueron proporcionados por el usuario. La programación junto con los datos de prueba se desarrollan utilizando para ello software disponible en el mercado que se pueda ejecutar una computadoras personales estandar. PLDs BORRABLES Los PLDs estudiaron hasta este momento son programados por la quema de conexiones fusibles. 9 Una vez que el fusible esta quemado, no es posible volverlo a conectar. De este modo, si usted comete un error en la programación o si desea cambiar el diseño, el diseño ya no tendrá utilidad y tendrá que desecharse. Estos dispositivos, denominados dispositivos lógicos programables borrables (EPLDs), se programan y borran igual que las EEPROMs ARQUITECTURA DE LA RAM Como sucede con la ROM, la RAM consta de varios registros, cada uno de los cuales almacena una sola palabra de datos y con una dirección única. Las RAM comúnmente vienen con capacidades de palabras de 1K, 4K, 8K, 16K,32K, 64K, 128K, 256K y tamaños de palabras de 1, 4 u 8 bits. Operación de lectura .− El código de dirección selecciona un registro del circuito de memoria para leer o escribir. A fin de leer el contenido del registro seleccionado, la entrada LECTURA /ESCRITURA(R/) debe ser un 1. La entrada CS(SELECCIÓN DE CI) debe ser activada. Operación de escritura.− Para escribir una palabra de 4 bits en el registro seleccionado se requiere que R/ = 0 y CS = 1. Esta combinación habilita los buffers de entrada de manera que la palabra de cuatro bits aplicada a las entradas de datos se cargará en el registro seleccionado. Selección de CI .− Muchos circuitos de memoria tienen una o más entradas CS que usan para habilitar o deshabilitar al circuito en su totalidad. Terminales comunes de entrada /salida .− La entrada R/ controla la función de estas terminales E/S. Durante una operación de lectura, las terminales E/S actúan como salidas de datos que reproducen el contenido de la localidad de dirección. Durante una operación de escritura, las terminales E/S actúan como entradas de datos. RAM ESTATICA (SRAM) La memoria RAM estática es aquella que puede almacenar datos mientras se aplica energía al circuito. Las RAM estáticas (SRAM) se encuentran disponibles en tecnologías bipolar y MOS, aunque la vasta mayoría de las aplicaciones hacen uso de RAM NMOS o bien CMOS. Temporización de la RAM estática .− Los CI de la RAM son los que más frecuentemente se utilizan como la memoria interna de una computadora. Los circuitos de memoria que se conectan con la CPU tienen que ser lo suficientemente rápidos para responder a los comandos de lectura y escritura de la CPU. Ciclo de lectura .− El ciclo de lectura comienza en el tiempo t0. Las entradas de direcciones tendrán la que se encuentre sobre el canal de direcciones, la cual corresponde a la de la operación previa. Dado que la entrada de selección de Cl de la RAM no está activa, ésta no responderá a la anterior dirección. En t0 la CPU envía una nueva dirección a las entradas de la RAM; ésta es la dirección de la localidad donde se realizará la operación se estabilicen, se activa la línea CS. Ciclo de escritura.− En t1, durante el intervalo de tiempo de escritura, la CPU envía sobre el canal de datos el dato válido que va a escribirse en la RAM. Los datos tienen que mantenerse en la entrada RAM por lo menos por un intervalo de tiempo tDS previo a, y por lo menos un intervalo tDH después de, la desactivación de las señales. El intervalo tDS recibe el nombre de tiempo de establecimiento del dato mientras que tDH se denomina tiempo de retención del dato. El ciclo de escritura completo termina cuando la CPU cambia el estado de las líneas de direcciones para colocar ellas una nueva dirección. 10 Circuito real SDRAM .− Un ejemplo de un CI real SDRAM es la CMOS 6264 que es una memoria de 8K x 8 con ciclos de lectura y escritura de 100 ns y un consumo de potencia 0.1 mW en el estado de espera. RAM DINAMICA Las RAM dinámicas se fabrican con tecnología MOS y se caracterizan por su gran capacidad, bajos requerimientos de consumo de potencia y velocidad de operación media. A diferencia de las RAM estáticas, las cuales guardan información en FF, las RAM dinámicas guardan los unos y ceros como cargas sobre pequeños capacitores MOS. Dada la tendencia que tienen estas cargas a fugarse después de cierto tiempo, las RAM dinámicas requieren de la carga periódica de las celdasde memoria; este proceso recibe el nombre de refresco de la memoria RAM dinámica. 11