Consultar ensayos de calidad


Memorias De Un Procesador - memoria de solo Lectura (ROM), arreglo Lógico Programable



Memorias De Un Procesador


Introducción

El ser humano en la exploración constante de mejorar sus condiciones de vida, ha buscado a través del tiempo, perfeccionar las maquinarias necesarias para producir mas en menor tiempo, transportar de forma mas rapida y mejorar cada uno de los aspectos que permiten el desarrollo de la sociedad llegando incluso a crear grandes y amplias vías de comunicación a todos los niveles.
Motivo por el cual, actualmente, la humanidad se encuentra dentro de una constante transformación tecnológica que tiene como base la informatica, procesando información sobre todo los temas y aspectos de la acción humana.
Es por ello que la tecnología ha avanzado,en ciudades, casas y lugares de trabajo, ocasionando grandes éxitos en areas como la salud, economía, arte, educación, ingenierías, ciencias, astronomía y un sinfín de areas que se han vuelto mucho mas eficientes y a su vez dependientes de dicha tecnología, donde la protagonista responde al nombre de ordenador o computadora.


De modo que la ingeniería toma todo lo antes descrito y construye tecnología que faciliten el diaria vivir de las persona, por lo cual todo futuro ingeniero debe conocer el funcionamiento de un computador y sus componentes tangibles y no tangibles.
Partiendo de lo antes descrito se realizó la presente investigación con la finalidad de conocer las partes del ordenador que permiten el almacenamiento de información, así como también sus principales formas de funcionamiento.

Memoria de sólo lectura (ROM)
Existe un tipo de memoria que almacena información sin necesidad de corriente eléctrica; se trata de la ROM (Read Only Memory, o Memoria de Sólo Lectura), a veces denominada memoria no volatil, dado que no se borra cuando se apaga el sistema.
Una memoria de solo lectura (ROM) es, en esencia, un dispositivo de memoria en el que se almacena información binaria permanente. El diseñador debe especificar la información, que entonces se incorpora a la unidad para formar el patrón, permanece en la unidad aunque se apague y se vuelva a encender.
En la siguiente figura se muestra un diagrama de bloque de una ROM. Tiene kentradas y n salidas. Las entradas proporcionan la dirección de memoria u las salidas suministran los bits de datos de las palabras seleccionada almacenada por la dirección. El número de palabras de una ROW esta determinado por el hecho de que se necesita k líneas de dirección para especificar 2n palabras. La ROM no tiene entrada de datos porque no efectúa la operación de escritura. Los chips de circuitos integrados de ROM tienen una o mas entradas de habilitación y a veces cuneta con salidas de tres entradas que facilita la construcción de grandes arreglos de ROM
k entradas (dirección)
k entradas (dirección)
N salidas (datos)
N salidas (datos)
ROM de
2K X n

ROM de
2K X n

Diagrama de bloques de ROM. Fig 1
Diagrama de bloques de ROM. Fig 1


Este tipo de memoria permite almacenar la información necesaria para iniciar el ordenador. De hecho, no es posible almacenar esta información en el disco duro, dado que los parametros del disco (vitales para la inicialización) forman parte de dicha información y resultan esenciales para el arranque.
Existen diferentes memorias de tipo ROM que contienen dichos datos esenciales para iniciar el ordenador, entre ellas:
• El BIOS, es un programa que permite controlar las principales interfaces de entrada-salida, de ahí el nombre BIOS ROM que a veces se le da al chip de la memoria de sólo lectura de la placa madre que lo aloja.
• El cargador de bootstrap: programa para cargar memoria (deacceso aleatorio) al sistema operativo y ejecutarla. Éste, generalmente busca el sistema operativo de la unidad de disquetes y luego el disco duro, lo que permite que el sistema operativo se ejecute desde el sistema de disquetes en el caso de que ocurra algún desperfecto en el sistema instalado en el disco duro.
• La Configuración CMOS es la pantalla que se visualiza al iniciarse el ordenador. Se utiliza para modificar los parametros del sistema (a menudo erróneamente llamada BIOS).
• La Auto-prueba de Encendido (POST) es un programa que se ejecuta automaticamente cuando arranca el sistema, permitiendo de esta manera probar dicho sistema (razón por la cual el sistema 'cuenta' la RAM en el inicio).
Dado que las memorias ROM son mucho mas lentas que las RAM (el tiempo de acceso en el caso de la ROM es de unos 150 ns, mientras que para la SDRAM es de unos 10 ns), las instrucciones suministradas en la ROM a veces se copian a la RAM en el inicio; proceso denominado respaldo, aunque a menudo se le llama memoria de respaldo).
Consideremos por ejemplo una ROM de 32 x 8. La unidad consiste en 32 palabras de 8 bits cada una. Hay 5 líneas de entradas que forman los números binarios del 0 al 31 para la dirección. La figura de abajo muestra la construcción lógica interna de la ROM. Las cinco entradas se decodifican a 32 salidas distintas con un decodificador de 5 x 32. Cada salida del decodificador representa una dirección de memoria. Las 32 salidas deldecodificador se conectan a cada una de las ocho compuertas OR. El diagrama la convención de arreglos lógicos que se emplean en circuitos complejos. Debe de considerarse que cada compuerta OR tiene 32 entradas. Cada salida del decodificador se conecta a una de las entradas de cada compuerta OR. Puesto que cada compuerta OR tiene 32 conexiones de entrada y hay ocho compuertas OR, la ROM contiene 32 x 8 = 256 conexiones internas. En general, una ROM de 2k y n compuertas OR. Cada compuerta OR tiene 2k entradas, que se conectan a cada una de las salidas del decodificador.


Lógica interna de una ROM de 32 x 8

Tabla de la verdad de ROM (parcial)
Las 256 interconexiones de la figura son programables. Una conexión programable entre dos líneas equivale lógicamente a un interruptor que se puede alterar de modo que esté cerrado (o sea, que las dos líneas estan conectadas) o abierta (o sea que las dos líneas estan desconectadas) la intersección programable entre dos líneas se conoce como punto de cruce. Se usan diversos dispositivos físicos para implementar interruptores de punto de cruce. Una delas tecnologías mas sencillas utiliza un fusible que normalmente conecta los dos puntos, pero que se abre o quema con un pulso de alto voltaje.
El almacenamiento binario interno de una ROM se especifica con una tabla de verdad que indica le contenido de palabras de cada dirección. Por ejemplo, el contenido de una ROM de 32 x 8 se especifica con una tabla de la verdad similar a la que se observa en la tabla, esa tabla presenta las cinco entradas bajo la que se da una lista de las f32 direcciones en cada dirección, esta almacenada una palabra de 8 bits, que se da bajo las columnas de salidas. La tabla solo muestra las primeras cuatro y las últimas cuatro palabras de la ROM. La tabla completa debería contener la lista de 32 palabras.
ENTRADAS SALIDAS |
14 13 12 11 10 A7 A6 A5 A4 A3 A2 A1 A0 |
0 | 0 | 0 | 0 | 0 1 | 0 | 1 | 1 | 0 | 1 | 1 | 0 |
0 | 0 | 0 | 0 | 1 0 | 0 | 0 | 1 | 1 | 1 | 0 | 1 |
0 | 0 | 0 | 1 | 0 1 | 1 | 0 | 0 | 0 | 1 | 0 | 1 |
0 | 0 | 0 | 1 | 1 1 | 0 | 1 | 1 | 0 | 0 | 1 | 0 |
| | | | | | | | | | | |
1 | 1 | 1 | 0 | 0 0 | 0 | 0 | 0 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 0 | 1 1 | 1 | 1 | 0 | 0 | 0 | 1 | 0 |
1 | 1 | 1 | 1 | 0 0 | 1 | 0 | 0 | 1 | 0 | 1 | 0 |
1 | 1 | 1| 1 | 1 0 | 0 | 1 | 1 | 0 | 0 | 1 | 1 |
Tabla 1
Tabla 1

El procedimiento en el hardware que programa la ROM hace que se quemen fusibles según una tabla de la verdad data. Por ejemplo, la programación de la ROM según la tabla de la verdad produce la configuración que se aprecia en la figura 1. Cada cero de la tabla de verdad especifica una ausencia de conexión. Por ejemplo la tabla especifica la palabra de ocho bits 10110010 que se almacenara permanentemente en la dirección 3. Los cuatros ceros de la palabra se programan quemando los fusibles entre la salida 3 del decodificador y las entradas de las compuertas OR asociadas a las salidas A6, A3, A2, y A0. Los cuatro unos de la palabra se han marcado en el diagrama con x para denotar una conexión, en lugar del punto que se usa para indicar una conexión permanente en los diagramas lógicos. Cuando la entrada de la ROM es 0011, todas las salidas del decodificador son 0 excepto la salida 3, que es uno lógico. La señal equivalente a 1 lógico en la salida 3 del decodificador se propaga por las conexiones hasta la salidas de compuerta OR A7, A5, A4 y A1. Las cuatro salidas siguen en 0. El resultado es que la palabra almacenada 101100010 se aplica a las ochos salidas de datos.





Implementación de circuitos combinacionales
La ROM es, en esencia, un dispositivo que incluye tanto el decodificador como las compuertas OR dentro de un solo dispositivo. Se escogemos conexiones para los minitérminos incluidos en la función, podremos programar las salidas de la ROM de modo que representa las funciones booleanas de las variables de salida en un circuito combinacional. El funcionamiento inter no de una ROM se interpreta de dos maneras. La primera interpretación en como una unidad de memoria que contiene un patrón fijo de palabras almacenadas. La segunda interpretación es como una unidad que implementa un circuito combinacional. Desde este punto de vista, cada terminal de salida se considera individual como salida de una función booleana que se expresa como suma de miniterminos. Por ejemplo la ROM de la figura 1 podría verse como un circuito combinacional que tiene ocho salidas, cada una de las cuales es función de las cinco variables de entrada.

La salida A7 se expresa como suma de miniterminos así: A7 (I4, I3, I2, I1, I0) = ∑ (0, 2, 3…, 29) (Los puntos suspensivos muestran a los miniterminos 4 a 27, que 2 seespecifican en la figura). Una conexión marcada con x en la figura produce un minitermino para la suma. Todos los demas puntos de cruce estan desconectados y no se incluyen en la suma.
En la practica cuando se diseña un circuito combinacional con una ROM, no es necesario diseñar la lógica ni mostrar las conexiones internas de compuertas dentro de la unidad. Lo único que necesita hacer el diseñador es especificar la ROM en relación con su número de CIA Y proporcionar la tabla de la verdad de la ROM. No se necesita un diagrama de lógica interna ademas de la tabla.
Diseñar un circuito combinacional con una ROM. El circuito acepta un número de tres bits y genera un número binario igual al cuadrado del número introducido. El primer pasó en decir la tabla de la verdad del circuito combinacional. En la mayoría de los casos no se necesita mas. En otros casos, se utiliza una tabla de la verdad parcial para la ROM aprovechando ciertas propiedades de las variables de salida. La tabla 2 es la tabla de verdad del circuito combinacional. Se requiere 3 entradas y 6 salidas para dar cabida a todos los números binarios posibles. Se observa que la salida B0 con un a ROM, pues es igual a una variable de entrada. Ademas. La salida B1 siempre es 0, así que esta salida con la ROM; las otras dos se obtienen facilmente. La ROM mínima requerida debe tener tres entradas y cuatro salida. Tres entradas especifican ocho palabras, así que el tamaño de la ROM es 8 x4. La implementación en ROM se ilustra en la figura 2. Las tres entradas especifican ocho palabras de cuatro bits cada una. La tabla de verdad de la figura 2b especifica la información necesaria para programar la ROM. El diagrama de bloques de la figura 2 indica las conexiones requeridas del circuito combinacional.
A0 A1 A2
A0 A1 A2

Tabla de la verdad.
2
Tabla de la verdad.
2

0
0
B0 B1 B2 B3 B4 B5
B0 B1 B2 B3 B4 B5

ROM de 8 x 4

ROM de 8 x 4
A0 A1 A2
A0 A1 A2

Entradas salidas |
A1 | A1 | A0 B5 | B4 | B3 | B2 | B1 | B0 | Decimal |
0 | 0 | 0 0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 0 | 0 | 0 | 0 | 0 | 1 | 1 |
0 | 1 | 0 0 | 0 | 0 | 1 | 0 | 0 | 4 |
0 | 1 | 1 0 | 0 | 1 | 0 | 0 | 1 | 9 |
1 | 0 | 0 0 | 1 | 0 | 0 | 0 | 0 | 16 |
1 | 0 | 1 0 | 1 | 1 | 0 | 0 | 1 | 25 |
1 | 1 | 0 1 | 0 | 0 | 1 | 0 | 0 | 36 |
1 | 1 | 1 1 | 1 | 0 | 0 | 0 | 1 | 49 |
A0 | A1 | A0 | B5 | B4 | B3 | B2 |
0 | 0 | 0 | 0 | 0 | 0 | 0 |
0 | 0 | 1 | 0 | 0 | 0 | 0 |
0 | 1 | 0 | 0 | 0 | 0 | 1 |
0 | 1 | 1 | 0 | 0 | 1 | 0 |
1 | 0 | 0 | 0 | 1 | 0 | 0 |
1 | 0 | 1 | 0 | 1 | 1| 0 |
1 | 1 | 0 | 1 | 0 | 0 | 1 |
1 | 1 | 1 | 1 | 1 | 0 | 0 |


Diagramas de bloque
Diagramas de bloque

Tabla de la verdad de la ROM
Tabla de la verdad de la ROM

Tipos de ROM
Las memorias ROM han evolucionado gradualmente desde memorias fijas de sólo lectura hasta convertirse en memorias que pueden programarse y reprogramarse.
ROM
Las primeras memorias ROM se fabricaron utilizando un procedimiento que escribe directamente la información binaria en una placa de silicona mediante una mascara. Este procedimiento hoy en día es obsoleto.


Celda de ROM
Celda de ROM.


PROM
Las memorias PROM (Programmable Read Only Memory, o Memoria Programable de Sólo Lectura), fueron desarrolladas a fines de la década del 70 por una compañía llamada Texas Instruments. Dichas memorias consisten en chips que comprimen miles de fusibles (o diodos) capaces de 'quemarse' mediante un dispositivo denominado 'programador ROM', aplicando un alto voltaje (12V) a las cajas de memoria a marcar. Los fusibles quemados corresponden a 0 y los demas a 1.

PROM D23128C en la placa base de una Sinclair ZX Spectrum.
PROM D23128C en la placa base de una Sinclair ZX Spectrum.

EPROM
Las memorias EPROM (Erasable Programmable Read Only Memory, o Memoria Programable y Borrable de Sólo Lectura), sonmemorias PROM que se pueden eliminar.
Estos chips disponen de un panel de vidrio que deja entrar los rayos ultra-violeta. Cuando el chip es sometido a rayos ultra-violeta de una determinada longitud de onda, se reconstituyen los fusibles, lo que implica que todos los bits de memoria vuelven a 1. Por esta razón, este tipo de PROM se denomina borrable.

Una EPROM de 32KB (256Kbit).
Una EPROM de 32KB (256Kbit).

EPROM. La pequeña ventana de cuarzo recibe luz UV durante el borrado.

EPROM. La pequeña ventana de cuarzo recibe luz UV durante el borrado.

EEPROM
Las memorias EEPROM (Electrically Erasable Programmable Read Only Memory, o Memoria Programable de Sólo Lectura Borrable Eléctricamente) también son memorias PROM borrables, pero a diferencia de éstas, se pueden borrar mediante una sencilla corriente eléctrica, es decir, incluso si se encuentran en posición en el ordenador.
Existe una variante de estas memorias, conocida como memoria flash (también Flash ROM o Flash EPROM). A diferencia de las memorias EEPROM clasicas, que utilizan 2 o 3 transistores por cada bit a memorizar, la memoria EPROM Flash utiliza un solo transistor. Ademas, la memoria EEPROM puede escribirse y leerse palabra por palabra, mientras que la Flash únicamente puede borrarse por paginas (el tamaño de las paginas disminuye constantemente).
Por último, la memoria Flash es mas densa, lo que implica que pueden producirse chips que contengan cientos de megabytes. De esta manera,las memorias EEPROM son preferibles a la hora de tener que memorizar información de configuración, mientras que la memoria Flash se utiliza para código programable (programas de IT).



Memoria EEPROM 2402, 24C02, 24W02

Memoria EEPROM 2402, 24C02, 24W02

Arreglos Lógicos Programables (PAL)
Un dispositivo lógico programable es aquel cuyas características pueden ser modificadas y almacenadas mediante programación. Entre los dispositivos lógicos programables el PAL es el mas simple, son los mas populares y los mas utilizados.
El circuito interno de un PAL consiste de una matriz de conexiones, una matriz de compuertas AND programables y un arreglo de compuertas OR fijo [1]. La matriz de conexiones es una red de conductores distribuidos en filas y columnas con un fusible en cada punto de intersección, mediante la cual se seleccionan cuales entradas del dispositivo seran conectadas al arreglo OR y así obtener una función lógica en forma de suma de productos. Los circuitos PAL son no reprogramables; ya que la síntesis de las ecuaciones lógicas se realiza a través de la quema de fusibles en cada punto de intersección de los pines de entrada con las compuertas.
Estructura de la PAL
En la Figura 1 se muestra la estructura interna de una PAL, en esta se observa que cada línea de salida es conectada a tres líneas producto y por consiguiente representa una suma de tres términos producto.

Figura 2. Estructura interna de la PAL estandar.

Figura 2.Estructura interna de la PAL estandar.

Figura 1. Estructura interna de la PAL.

Figura 1. Estructura interna de la PAL.

Debido al arreglo OR, la representación del PAL mostrada en la Figura 2 es mas usada que el de la Figura 1.
Funcionamiento de la PAL.
Como se ha mencionado, las PAL estan formadas por una matriz de puertas AND programable conectada a una puerta OR fija. Esta estructura permite implementar cualquier suma de productos lógicos con un número de variables definidas y limitadas, entre otras, por el número de entradas y salidas que tenga el dispositivo.
En la Figura 3 se muestra la estructura basica de un PAL para tres variables de entrada y salida sin programar [2]. Cada punto de intersección entre una fila y una columna se denomina celda y es el elemento programable de la PAL. Cada fila se conecta a la entrada de una puerta AND y cada columna a la variable de entrada o su complemento. En función de la presencia o ausencia de las conexiones creadas por programación, se puede aplicar cualquier combinación de variables de entrada o sus complementos a una puerta AND para generar cualquier operación producto que se desee.

Figura 3. PAL con matriz AND sin programar.

Figura 3. PAL con matriz AND sin programar.

La implementación de una función lógica sobre un PAL, se muestra la figura 4, donde las señales que entran a la matriz son las variables de entrada y sus complementos. Cuando se requiere la conexión entre una fila y una columna,el fusible queda intacto, Cuando dicha conexión no se requiere, el fusible se abre en el proceso de programación. La salida de la puerta OR proporciona finalmente la suma de productos. Observe que si alguna entrada de una puerta AND queda sin conectar, esta adquiere el valor del elemento neutro del producto lógico, sin afectar el resultado de dicha puerta.

Figura 4. PAL con matriz AND programada.

Figura 4. PAL con matriz AND programada.

Símbolo simplificado de la PAL.
Puesto que las PAL son circuitos integrados muy complejos desde el punto de vista interno, los fabricantes han adoptado una notación simplificada para eliminar los diagramas lógicos complicados. En la Figura 5 se muestra la notación.

Figura 5. Símbolo simplificado de una PAL.

Figura 5. Símbolo simplificado de una PAL.

Buffer de entrada: Para evitar cargar con la gran cantidad de entradas de puertas AND a las que se pueden conectar una variable o su complemento, se añade un buffer a las variables de entrada de la PAL. Un buffer inversor genera el complemento de una variable de entrada.
Puertas AND: una matriz AND de una puerta PAL típica tiene una gran cantidad de líneas de interconexión y cada puerta AND tiene entradas múltiples. El diagrama lógico de una PAL muestra cada puerta AND que realmente tienen varias entradas, utilizando una sola línea para representar a todas las líneas de entrada.
Conexiones de una PAL: Para obtener un diagrama lo mas sencillo posible, losfusibles de una matriz AND programable se indican mediante una X en el punto de intersección si el fusible queda intacto y no se indica nada sí el fusible esta fundido. Las conexiones fijas emplean el punto estandar.

Diagrama de bloque de una PAL.
Las salidas de la matriz AND son las entradas de la matriz OR y la salida de cada puerta OR se asocia a una variable lógica de salida. Una PAL típica tiene ocho o mas entradas en la matriz AND y hasta ocho bloques lógicos de salida como se muestra en la Figura 6 [3].

Figura 6. Diagrama de bloque de una PAL.

Figura 6. Diagrama de bloque de una PAL.

Algunas PAL disponen de pines de entrada/salida (E/S) combinados, que se pueden programar como salida o como entrada. La presencia de estos pines es muy útil cuando se desea, por ejemplo, realizar una realimentación entre variables de salida y entrada como es el caso del diseño de un biestable.
Nomenclatura de la PAL
Los líderes en fabricación de PLDs, Texas Instruments y AMD, tienen una notación para identificar los dispositivos [2].
Por ejemplo, la estructura en PLD según AMD es

Figura 9. Nomenclatura utilizada para identificar los PLD según AMD.
Figura 9. Nomenclatura utilizada para identificar los PLD según AMD.
Dentro de la estructura de salida se tienen las posibilidades contenidas en la tabla 1.

Tabla 1 Tipos de Salidas de una PAL.

Conclusión

Dentro del computador se encuentran varios tipos de memoria que cumplen una función específica ypermiten el funcionamiento de otras, entre ellas
Memoria de sólo lectura (ROM) encargada de almacenar información sin necesidad de corriente eléctrica, no se borra cuando se apaga. Esta a su vez tienes diversos tipos como lo son el BIOS, el cargador bootstrap, la configuración y la auto-prueba de encendido (POTS)
De igual forma contienen las memorias PROM que son solo de lectura, Las memorias EPROM son memorias PROM que se pueden eliminar, Las memorias EEPROM también son memorias PROM borrables, pero, se pueden borrar mediante una sencilla corriente eléctrica
De las memoria EEPROM Existe una variante de estas memorias, conocida como memoria flash (también Flash ROM o Flash EPROM).
En el mismo orden de ideas se encentran los Arreglos Lógicos Programables (PAL), los cuales son entendidos como Un dispositivo lógico programable cuyas características pueden ser modificadas y almacenadas mediante programación.
Las PAL estan formadas por una matriz de puertas AND programable conectada a una puerta OR fija, Esta estructura permite implementar cualquier suma de productos lógicos con un número de variables definidas y limitadas, entre otras.

Bibliografía.

http://es.kioskea.net/contents/pc/rom.php3
http://es.scribd.com/doc/15623439/Memoria-de-Solo-Lectura-ROM

http://ingridbasanta.blogspot.com/2007/12/dispositivos-lgicos-programables.html
M. Morris Mano.
Texto informativo. Texto [físico]: información actualizada 2003 Consulta [30/01/2013]


Política de privacidad