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]