EVOLUCIN DE LOS CPLDs
1.- INTRODUCCIN
Las computadoras y otros tipos de sistemas requieren el
almacenamiento permanente o semipermanente de un gran nmero de
datos binarios. Los sistemas basados en microprocesadores necesitan
de la memoria para almacenar los programas y datos generados
durante el procesamiento y disponer de ellos cuando sea
necesario.Las modernas tcnicas de circuitos integrados permiten
combinar miles e incluso millones de puertas dentro de un solo
encapsulado. Esto ha llevado a la fabricacin de diseos ms complejos
como los dispositivos lgicos programables, memorias y
microprocesadores, que proporcionan dentro de un solo chip
circuitos que requieren gran cantidad de componentes discretos.Las
memorias son dispositivos de almacenamiento de datos binarios de
largo o corto plazo .La memoria es un componente fundamental de las
computadoras digitales y est presente en gran parte de los sistemas
digitales. La memoria de acceso aleatorio (RAM, random access
memory) almacena datos temporalmente, la memoria de slo lectura
(ROM, Read only memory) los guarda de manera permanente. La ROM
forma parte del grupo de componentes llamados dispositivos lgicos
programables (PLD, programmable logic devices), que emplean la
informacin almacenada para definir circuitos lgicos.Dispositivos
que son capaces de proveer el medio fsico para almacenar esta
informacin. Y aunque esta es su tarea fundamental (ms del 90 % de
las memorias se dedican a este fin) tambin se pueden utilizar para
la implementacin de circuitos combinacionales y pueden sustituir la
mayor parte de la lgica de un sistema.Los chips LSI pueden
programarse para realizar funciones especficas. Un dispositivo
lgico programable (PLD) es un chip LSI que contiene una estructura
de circuito regular, pero que permite al diseador adecuarlo para
una aplicacin especfica. Cuando un PLD tpico deja la fbrica de IC,
an no est listo para una funcin especfica, sino que debe ser
programado por el usuario para que realice la funcin requerida en
una aplicacin particular. Los chips con la mayor funcionalidad por
unidad de rea han sido los chips de memoria, que contienen arreglos
rectangulares de celdas de memoria. Uno de los PLD es el chip de
memoria de slo lectura.En una primera clasificacin, se puede
distinguir entre memorias de almacenamiento masivo, caracterizadas
por ser memorias baratas y lentas, y memorias semiconductoras o
memorias de estado slido, ms caras y rpidas. En las primeras, la
prioridad es disponer de una gran capacidad de almacenamiento, como
ocurre en los discos duros, en tanto que en las segundas, la
prioridad es disponer de velocidades de acceso rpidas compatibles
con la mayor capacidad de almacenamiento posible Que son las
habitualmente utilizadas como memorias de almacenamiento de
programa y de datos en la mayora de las aplicaciones. Que ofrece
cada tipo de memoria as como las tecnologas de fabricacin, que han
permitido un espectacular avance en las velocidades y escalas de
integracin en los ltimos aos.
Podemos considerar una memoria como un conjunto de M registros
de N bits cada uno de ellos. Estos registros ocupan las posiciones
desde el valor 0 hasta M-1. Para acceder a cada registro es
necesaria una lgica de seleccin. En general, para cada registro se
pueden realizar procesos de lectura y de escritura. Para realizar
todas estas operaciones son necesarios los siguientes terminales
Terminales de datos (de entrada y de salida). En nuestro caso son
necesarios N terminales:Terminales de direcciones, son necesarios
m, de tal forma de 2m=MTerminales de control. Son los que permiten
especificar si se desa realizar una operacin de escritura o de
lectura, seleccionar el dispositivo./CS (Chip select): Es el
terminal de seleccin de chip (habitualmente es activo con nivel
bajo.1 Las primeras son las relacionadas con nuestros conocidos
discos de ordenador, y las ltimas estn abriendo en la actualidad un
atractivo abanico de posibilidades: desde los discos magnetopticos
hasta las memorias hologrficas.R/W (Read/Write): Selecciona el modo
de operacin (lectura o escritura) sobre lamemoria. habitualmente
con valor bajo es activo el modo de escritura.OE (Output Enable).
Controla el estado de alta impedancia de los terminales de salida
del dispositivo.
2.- MEMORIAS PROGRAMABLES
2.1.- MEMORIA ROM (READ ONLY MEMORY)Es una memoria de slo
lectura que se programan mediante mscaras. Es decir, el contenido
de las celdas de memoria se almacena durante el proceso de
fabricacin para mantenerse despus de forma irrevocable. Desde el
instante en que el fabricante grabo las instrucciones en el Chip,
por lo tanto la escritura de este tipo de memorias ocurre una sola
vez y queda grabado su contenido aunque se le retire la energa. Se
usa para almacenar informacin vital para el funcionamiento del
sistema: en la gestin del proceso de arranque, el chequeo inicial
del sistema, carga del sistema operativo y diversas rutinas de
control de dispositivos de entrada/salida suelen ser las tareas
encargadas a los programas grabados en ROM. Estos programas forman
la llamada BIOS (Basic Input Output System). Junto a la BIOS se
encuentra el chip de CMOS donde se almacenan los valores que
determinan la configuracin hardware del sistema, como tipos de
unidades, parmetros de los discos duros, fecha y hora del
sistema... esta informacin no se pierde al apagar la computadora.
Estos valores se pueden modificar por medio del SETUP. La memoria
ROM constituye lo que se ha venido llamando Firmware, es decir, el
software metido fsicamente en hardware. De cara a los fines del
usuario es una memoria que no sirve para la operacin de su
programa, slo le aporta mayores funcionalidades (informacin) del
equipo. Si tenemos idea de cmo se fabrican los circuitos
integrados, sabremos de donde viene el nombre. Estos se fabrican en
obleas (placas de silicio) que contienen varias decenas de chips.
Estas obleas se fabrican a partir de procesos fotoqumicos, donde se
impregnan capas de silicio y oxido de silicio, y segn convenga, se
erosionan al exponerlos a la luz. Como no todos los puntos han de
ser erosionados, se sita entre la luz y la oblea una mascara con
agujeros, de manera que donde deba incidir la luz, esta pasar. Con
varios procesos similares pero ms complicados se consigue fabricar
los transistores y diodos micromtricos que componen un chip. El
elevado coste del diseo de la mscara slo hace aconsejable el empleo
de los microcontroladores con este tipo de memoria cuando se
precisan cantidades superiores a varios miles de unidades.Los PCs
vienen con una cantidad de ROM, donde se encuentras los programas
de BIOS (Basic Input Output System), que contienen los programas y
los datos necesarios para activar y hacer funcionar el computador y
sus perifricos. La ventaja de tener los programas fundamentales del
computador almacenados en la ROM es que estn all implementados en
el interior del computador y no hay necesidad de cargarlos en la
memoria desde el disco de la misma forma en que se carga el DOS.
Debido a que estn siempre residentes, los programas en ROM son muy
a menudo los cimientos sobre los que se construye el resto de los
programas (incluyendo el DOS). Estas memorias, cuyo nombre procede
de las iniciales de Read Only Memory son solo de lectura. Dentro de
un proceso de elaboracin de datos de una computadora, no es posible
grabar ningn dato en las memorias ROM. Son memorias perfectas para
guardar microprogramas, sistemas operativos, tablas de conversin,
generacin de caracteres etc.
Las caractersticas fundamentales de las memorias ROM son:
1. Alta densidad: la estructura de la celda bsica es muy
sencilla y permite altas integraciones.2. No voltiles: el contenido
de la memoria permanece si se quita la alimentacin.3. Coste: dado
que la programacin se realiza a nivel de mscaras durante el proceso
de fabricacin, resultan baratas en grandes tiradas, de modo que el
coste de fabricacin se reparte en muchas unidades y el coste
unitario es baja.4. Slo lectura: nicamente son programables a nivel
de mscara durante su fabricacin.Su contenido, una vez fabricada, no
se puede modificar.Hay muchos tipos de ROM:
Una ROM puede estar fabricada tanto en tecnologa bipolar como
MOS.
La figura muestra celdas ROM bipolar. La presencia de una unin
desde una lnea de fila a la base de un transistor representa un 1
en esa posicin. En las unionesfila/columna en las que no existe
conexin de base, las lneas de la columnapermanecern a nivel bajo
(0) cuando se direccione la fila.
La figura 5.15 muestra celdas ROM con transistores MOS.
Bsicamente son iguales que las anteriores, excepto que estn
fabricadas con MOSFETs.
2.2.- MEMORIA PROM (PROGRAMMABLE READ ONLY MEMORIES)Una
alternativa para proyectos pequeos es el uso de una de las memorias
de slo lectura programables o PROM (programmable read only
memories), memoria basada en semiconductores que contiene
instrucciones o datos. stas existen en muchas variantes, pero todas
permiten que el usuario programe el dispositivo por si mismo,
ahorrndose el alto costo de la produccin de la mscara. En la PROM
(programable ROM), o memoria programable de slo lectura los
contenidos pueden ser ledos pero no modificados por un programa de
usuario. Sus contenidos no se construyen, como la ROM, directamente
en el procesador cuando ste se fabrica, sino que se crean por medio
de un tipo especial programacin, ya sea por el fabricante, o por
especialistas tcnicos de programacin del usuario. El proceso de
programacin es destructivo: una vez grabada, es como si fuese una
ROM normal.Las operaciones muy importantes o largas que se haban
estado ejecutando mediante programas, se pueden convertir en
microprogramas y grabarse permanentemente en una pastilla de
memoria programable slo de lectura. Una vez que estn en forma de
circuitos electrnicos, estas tareas se pueden realizar casi siempre
en una fraccin del tiempo que requeran antes. La flexibilidad
adicional que se obtiene con la PROM puede convertirse en una
desventaja si en la unidad PROM se programa un error que no se
puede corregir. Para superar esta desventaja, se desarroll la
EPROM, o memoria de solo lectura reprogrmale.
Las prestaciones de las memorias PROM son similares a las
anteriores, con la nica salvedad del proceso de programacin. La
escritura de la memoria PROM tiene lugar fundiendo los fusibles
necesarios por lo que la memoria PROM solo puede ser programada una
vez. Ahora la hace el usuario usando un equipo programador y,
adems, se rompe con la dependencia de la fbrica y los enormes
costes de las mscaras.
MTODO DE PROGRAMACIN DE LA MEMORIA PROMPara conseguir que la
informacin que se desea grabar sea inalterable, se utilizan dos
tcnicas: por destruccin de fusible o por destruccin de unin.La idea
es bsicamente la misma que las ideas ROM convencionales, pero en
este caso todas las celdas tienen diodos, por lo cual la memoria
viene programada de fbrica con todos 1. Cada diodo tiene conectado
un fusible, cuya funcionalidad es similar a la que podemos ver en
fuentes de alimentacin o estabilizadores de tensin: cuando se
produce una sobretensin, el fusible se quema y, por lo tanto, el
circuito se abre. De esta manera, el diodo pierde contacto con el
mundo exterior y el lector de memoria nunca sabe de su existencia,
as que a esa celda la interpreta como un cero. Por lo tanto para
programar un chip de memoria PROM; con un dispositivo llamado
programador (por cierto, un nombre muy original xD), se les aplica
a las celdas correspondientes una tensin superior a la que son
capaces de soportar los fusibles, y as quedan definidos todos los
bits de la memoria en cuestin. Como podemos ver, este tipo de
memorias tiene una falencia: no pueden ser reprogramadas.
La pastilla es insertada en un dispositivo que genera en las
salidas de la ROM (usadas como entradas) los valores lgicos de cada
palabra. Para cada posicin, se genera un pulso de hasta 30V por la
entrada Vpp=Vcc, que produce una circulacin de corrientes que
funden delgadas conexiones fusibles en serie con diodos o
transistores que se quiere desconectar. As se obtienen los ceros
que deben resultar en las salidas, dado que el chip virgen viene
con todos los diodos conectados. Este proceso dura pocos minutos.El
proceso de programacin de una PROM generalmente se realiza con un
equipo especial llamado quemador. Este equipo emplea un mecanismo
de interruptores electrnicos controlados por software que permiten
cargar las direcciones, los datos y genera los pulsos para fundir
los fusibles del arreglo interno de la memoria. En la figura se
indica de forma esquemtica la funcin del programador.
Programacin de un PROM
ARQUITECTURA DE LA PROMEstructura bsica de un PLD Un dispositivo
programable por el usuario es aquel que contiene una arquitectura
general pre-definida en la que el usuario puede programar el diseo
final del dispositivo empleando un conjunto de herramientas de
desarrollo. Las arquitecturas generales pueden variar pero
normalmente consisten en una o ms matrices de puertas AND y OR para
implementar funciones lgicas. Muchos dispositivos tambin contienen
combinaciones de flip-flops y latches que pueden usarse como
elementos de almacenaje para entrada y salida de un dispositivo.
Los dispositivos ms complejos contienen macroclulas. Las
macroclulas permiten al usuario configurar el tipo de entradas y
salidas necesarias en el diseo
Las PROM son memorias programables de slo lectura. Aunque el
nombre no implica la lgica programable, las PROM, son de hecho
lgicas. La arquitectura de la mayora de las PROM consiste
generalmente en un nmero fijo de trminos AND que alimenta una
matriz programable OR. Se usan principalmente para decodificar las
combinaciones de entrada en funciones de salida.a) Las Aplicaciones
ms importantes: b) Microprogramacin c) Librera de subrutinas d)
Programas de sistema e) Tablas de funcin
2.3.- MEMORIA EPROM Las EPROM, o Memorias slo de Lectura
Reprogramables, se programan mediante impulsos elctricos y su
contenido se borra exponindolas a la luz ultravioleta (de ah la
ventanita que suelen incorporar este tipo de circuitos), de manera
tal que estos rayos atraen los elementos fotosensibles, modificando
su estado.
- Vista de la Ventanita de una EPROM -PROGRAMACIN DE UNA MEMORIA
EPROMLas EPROM se programan insertando el chip en un programador de
EPROM. y aplicando en un pin especial de la memoria una tensin
entre 10 y 25 Voltios durante aproximadamente 50 ms, segn el
dispositivo, al mismo tiempo se direcciona la posicin de memoria y
se pone la informacin a las entradas de datos. Este proceso puede
tardar varios minutos dependiendo de la capacidad de memoria.La
memoria EPROM, se compone de un arreglo de transistores MOSFET de
Canal N de compuerta aislada. En la figura se observa el transistor
funcionando como celda de memoria en una EPROM.
Celda de memoria de una EPROMCada transistor tiene una compuerta
flotante de SiO2 (sin conexin elctrica) que en estado normal se
encuentra apagado y almacena un 1 lgico. Durante la programacin, al
aplicar una tensin (10 a 25V) la regin de la compuerta queda
cargada elctricamente, haciendo que el transistor se encienda,
almacenando de esta forma un 0 lgico. Este dato queda almacenado de
forma permanente, sin necesidad de mantener la tensin en la
compuerta ya que la carga elctrica en la compuerta puede permanecer
por un perodo aproximado de 10 aos. Las EPROMs tambin emplean
transistores de puerta dual o FAMOS (Floating Gate
Avalanche-Injection Metal-Oxide Semiconductor) de cargas
almacenadas.Estos transistores son similares a los transistores de
efecto de campo (FETs) canal-P, pero tienen dos compuertas. La
compuerta interior o flotante esta completamente rodeada por una
capa aislante de dixido de silicio; la compuerta superior o
compuerta de control es la efectivamente conectada a la circuitera
externa.Inicialmente, la puerta flotante esta descargada, y el
transistor se comporta como un transistor MOS normal. No obstante,
mediante un equipo programador, se puede acumular carga en la
puerta flotante aplicando una sobre tensin a la puerta y al
drenador del transistor. Esta acumulacin de electrones en la
segunda puerta tiene el efecto de aumentar la umbral del transistor
a un valor tal que no conduce aunque se direccione la celda. As
pues la cantidad de carga elctrica almacenada sobre la compuerta
flotante determina que el bit de la celda contenga un 1 o un 0; las
celdas cargadas son ledas como un 0, mientras que las que no lo
estn son ledas como un 1. Tal como las EPROMs salen de la fbrica,
todas las celdas se encuentran descargadas, por lo cual el bit
asociado es un 1; de ah que una EPROM virgen presente el valor
hexadecimal FF en todas sus direcciones.
Cuando un dado bit de una celda debe ser cambiado o programado
de un 1 a un 0, se hace pasar una corriente a travs del canal de
transistor desde la fuente hacia la compuerta (obviamente, los
electrones siguen el camino inverso). Al mismo tiempo se aplica una
relativamente alta tensin sobre la compuerta superior o de control
del transistor, crendose de esta manera un campo elctrico fuerte
dentro de las capas del material semiconductor.Ante la presencia de
este campo elctrico fuerte, algunos de los electrones que pasan el
canal fuente-compuerta ganan suficiente energa como para formar un
tnel y atravesar la capa aislante que normalmente asla la compuerta
flotante. En la medida que estos electrones se acumulan en la
compuerta flotante, dicha compuerta toma carga negativa, lo que
finalmente produce que la celda tenga un 0.Funcionamiento de una
EPROMRecordemos que son memorias de acceso aleatorio, generalmente
ledas y eventualmente borradas y reescritas.Una vez grabada una
EPROM con la informacin pertinente, por medio de un dispositivo
especial que se explicar luego, la misma es instalada en el sistema
correspondiente donde efectivamente ser utilizada como dispositivo
de lectura solamente. Eventualmente, ante la necesidad de realizar
alguna modificacin en la informacin contenida o bien para ser
utilizada en otra aplicacin, la EPROM es retirada del sistema,
borrada mediante la exposicin a luz ultravioleta con una longitud
de onda de 2537 Angstroms (unidad de longitud por la cual 1 A =
10-10 m), programada con los nuevos datos, y vuelta a instalar para
volver a comportarse como una memoria de lectura solamente. Por esa
exposicin para su borrado es que es encapsulada con una ventana
transparente de cuarzo sobre la pastilla o "die" de la EPROM.Es
atinente aclarar que una EPROM no puede ser borrada parcial o
selectivamente; de ah que por ms pequea que fuese la eventual
modificacin a realizar en su contenido, inevitablemente se deber
borrar y reprogramar en su totalidad.Los tiempos medios de borrado
de una EPROM, por exposicin a la luz ultravioleta, oscilan entre 10
y 30 minutos.Con el advenimiento de las nuevas tecnologas para la
fabricacin de circuitos integrados, se pueden emplear mtodos
elctricos de borrado. Estas ROM pueden ser borradas sin necesidad
de extraerlas de la tarjeta del circuito. Adems de EAPROM suelen
ser denominadas RMM (Read Mostly Memories),memorias de casi-siempre
lectura, ya que no suelen modificarse casi nunca, pues los tiempos
de escritura son significativamente mayores que los de lectura.Las
memorias de slo lectura presentan un esquema de direccionamiento
similar al de las memorias RAM. El microprocesador no puede cambiar
el contenido de la memoria ROM.Entre las aplicaciones generales que
involucran a las EPROM debemos destacar las de manejo de sistemas
microcontrolados. Todo sistema microcontrolado y/o microprocesado
(se trate de una computadora personal o de una mquina expendedora
de boletos para el autotransporte...) nos encontraremos con cierta
cantidad de memoria programable por el usuario (la RAM), usualmente
en la forma de dispositivos semiconductores contenidos en un
circuito integrado (no olvidemos que un relay biestable o un
flip-flop tambin son medios de almacenamiento de informacin).Estos
dispositivos semiconductores integrados estn generalmente
construidos en tecnologa MOS (Metal-Oxide Semiconductor,
Semiconductor de Oxido Metlico) o -ms recientemente- CMOS
(Complementary Metal-Oxide Semiconducto o Semiconductor de Oxido
Metlico Complementario). Lamentablemente, estos dispositivos RAM
adolecen de un ligero inconveniente, que es, como ya se ha
comentado, su volatibilidad.Dado que cualquier sistema
microprocesado requiere de al menos un mnimo de memoria no voltil
donde almacenar ya sea un sistema operativo, un programa de
aplicacin, un lenguaje intrprete, o una simple rutina de "upload",
es necesario utilizar un dispositivo que preserve su informacin de
manera al menos semi-permanente. Y aqu es donde comienzan a brillar
las EPROMs.
Tal como mencionramos anteriormente, el proceso de borrado de
los datos contenidos en una EPROM es llevado a cabo exponiendo la
misma a luz ultravioleta. El punto reside en que la misma contiene
fotones (Cuantos de energa electromagntica) de energa relativamente
alta.La familia 2700Los dispositivos EPROM de la familia 2700
contienen celdas de almacenamiento de bits configuradas como bytes
direccionables individualmente. Habitualmente esta organizacin
interna suele denominarse como 2K x 8 para el caso de una 2716, 8k
x 8 para una 2764, etc.Por razones de compatibilidad (tanto con
dispositivos anteriores como con dispositivos futuros), la gran
mayora de las EPROMs se ajustan a distribuciones de terminales o
"pin-outs" estndar. Para el caso mas usual, que es el encapsulado
DIP (Dual In-Line Package) de 28 pines, el estndar utilizado es el
JEDEC-28.En cuanto a la programacin de estos dispositivos (si bien
conceptualmente obedece siempre a la metodologa descripta
anteriormente) en realidad existe una relativamente alta variedad
de implementaciones prcticas.Si bien en la actualidad parece
haberse uniformado razonablemente, las tensiones de programacin
varan en funcin tanto del dispositivo, como del fabricante; as nos
encontramos con tensiones de programacin (Vpp) de 12,5V, 13V, 21V y
25V.Lo mismo sucede con otros parmetros importantes que intervienen
en el proceso de grabacin de un EPROM, como es el caso de la
duracin de dicho pulso de programacin y los niveles lgicos que
determinan distintos modos de operacin.PROGRAMADOR/ EMULADOR DE
FLASH EPROMLa manera ms cmoda, aunque tambin la ms costosa de
desarrollar circuitos microcontroladores consiste en simular la
parte principal del controlador con la ayuda de un emulador. Una de
opciones ms baratas consiste en emplear un programa monitor junto
con un emulador de memorias EPROM. Desafortunadamente, la mayora de
los programas monitores consumen algunos de los recursos del
controlador. Esta seria desventaja se resuelve utilizando el
emulador de memorias EPROM, que se comporta bsicamente igual que
una memoria RAM de un doble puerto: a un lado se encuentra la
interfase, como una memoria EPROM, mientras que al otro lado
proporciona las seales necesarias para introducir el flujo de datos
a la memoria RAM.Cuando compaas como AMD desarrollaron las memorias
EPROM "Flash" con una tensin de programacin de 5V y un ciclo de
vida que permita programar la memoria hasta 100.000 veces, se
abrieron las puertas a un nuevo modelo de emulador de memorias
EPROM. El diseo que se presenta no solo acta como un emulador con
una enorme capacidad de almacenamiento, sino que tambin funciona
como un programador de memorias EPROM "Flash", ahorrndose comprar
un sistema exclusivamente dedicado a programar.Cuando se termine de
trabajar con el emulador durante la fase del diseo, se dispondr en
la memoria EPROM "Flash" del cdigo definitivo, que se sacar del
emulador y se introducir en el circuito que se vaya a utilizar en
la aplicacin. Como los precios de las memorias EPROM "Flash" no son
mucho mayores que los de las memorias EPROM convencionales, la
ventaja adicional que se ha descrito es sin costo.
Ejemplo de Borrador de una EPROMFotografas de algunos borradores
de eproms
2.4.- MEMORIA EEPROM (ELECTRICAL ERASABLE PROGRAMMABLE READ ONLY
MEMORY)
La memoria EEPROM es programable y borrable elctricamente y su
nombre proviene de la sigla en ingls Electrical Erasable
Programmable Read Only Memory. Actualmente estas memorias se
construyen con transistores de tecnologa MOS (Metal Oxide Silice) y
MNOS (Metal Nitride-Oxide Silicon).Las celdas de memoria en las
EEPROM son similares a las celdas EPROM y la diferencia bsica se
encuentra en la capa aislante alrededor de cada compuesta flotante,
la cual es ms delgada y no es fotosensible.
Las memorias EEPROM (Electrically Erasable Programmable
Read-Only Memory) son memorias no voltiles y elctricamente
borrables a nivel de bytes. La posibilidad de programar y borrar
las memorias a nivel de bytes supone una gran flexibilidad, pero
tambin una celda de memoria ms compleja. Adems del transistor de
puerta flotante anterior, es preciso un segundo transistor de
seleccin. El tener 2 transistores por celda hace que las memorias
EEPROM sean de baja densidad y mayor coste. La programacin requiere
de tiempos que oscilan entre 157s y 625s=byte. Frente a las
memorias EPROM, presenta la ventaja de permitir su borrado y
programacin en placa, aunque tienen mayor coste debido a sus dos
transistores por celda.Estas memorias se presentan, en cuanto a la
organizacin y asignacin de patillas, como la UVPROM cuando estn
organizadas en palabras de 8 bits. Se programan de forma casi
idntica pero tienen la posibilidad de ser borradas elctricamente.
Esta caracterstica permite que puedan ser programadas y borradas en
el circuito.Debido a que la clda elemental de este tipo de memorias
es ms complicada que sus equivalentes en EPROM o PROM (y por ello
bastante ms cara), este tipo de memoria no dispone en el mercado de
una variedad tan amplia, y es habitual tener que acudir a
fabricantes especializados en las mismas (ejemplo: Xicor).
24LC256
En cuanto a la forma de referenciar los circuitos, estas
memorias suelen comenzar con el prefijo 28, de forma que la 2864
indica una memoria EEPROM de 64Kbytes, equivalente en cuanto a
patillaje y modo de operacin de lectura a la UVPROM 2764.Una
ventaja adicional de este tipo de memorias radica en que no
necesitan de una alta tensin de grabado, sirven los 5 voltios de la
tensin de alimentacin habitual.
MEMORIA EEPROMBUS DEDATOSBUS DE DIRECCIONESCE = CHIP ENABLE:
Permite Activar el Circuito IntegradoOE = OUTPUT ENABLE: Permite
Activar La Salida Del Bus De Datos
LECTURA 0
0
1
ESCRITURA 0 1 0
Ventajas de la EEPROM:La programacin y el borrado pueden
realizarse sin la necesidad de una fuente de luz UV y unidad
programadora de PROM, adems de poder hacerse en el mismo circuito
gracias a que el mecanismo de transporte de cargas mencionado en el
prrafo anterior requiere corrientes muy bajas.Las palabras
almacenadas en memoria se pueden borrar de forma individual.Para
borra la informacin no se requiere luz ultravioleta.Las memorias
EEPROM no requieren programador.De manera individual puedes borrar
y reprogramar elctricamente grupos de caracteres o palabras en el
arreglo de la memoria.El tiempo de borrado total se reduce a 10ms
en circuito donde su antepasado inmediato requera media hora bajo
luz ultravioleta externa.El tiempo de programacin depende de un
pulso por cada palabra de datos de 10 ms, versus los 50 ms
empleados por una ROM programable y borrable.Se pueden reescribir
aproximadamente unas 1000 veces sin que se observen problemas para
almacenar la informacin.Para reescribir no se necesita hacer un
borrado previo.Aplicaciones de las Memorias EEPROMEncontramos este
tipo de memorias en aquellas aplicaciones en las que el
usuarionecesita almacenar de forma permanente algn tipo de
informacin; por ejemplo en los receptores de TV o magnetoscopios
para memorizar los ajustes o los canales de recepcin.
EJEMPLO DE MEMORIA EEPROM - 28C64AEsta memoria tiene una
capacidad de 8K X 8 (64 KB).
Caractersticas TcnicasReferencia28C64ATipoEEPROM CMOSCapacidad
(bits)8192 X 8Tipo de salida5VTiempos de Acceso120/150/200
nsEncapsuladoDIL-28 y PLCC-32
EEPROM 28C64AEn la figura se indica la disposicin de los pines
de esta memoria la cual se encuentra disponible en dos tipos de
encapsulados (DIL y PLCC).
2.5.- MEMORIA FLASH
La memoria FLASH es similar a la EEPROM, es decir que se puede
programar y borrar elctricamente, son de alta densidad (gran
capacidad de almacenamiento de bits). Alta densidad significa que
se puede empaquetar en una pequea superficie del chip, gran
cantidad de celdas, lo que implica que cuanto mayor sea la
densidad, ms bits se pueden almacenar en un chip de tamao
determinado. Sin embargo esta rene algunas de las propiedades de
las memorias anteriormente vistas, y se caracteriza por tener alta
capacidad para almacenar informacin y es de fabricacin sencilla, lo
que permite fabricar modelos de capacidad equivalente a las EPROM a
menor costo que las EEPROM.ESTRUCTURA DE LA MEMORIA FLASHAntes de
analizar la memoria Flash a nivel de celda veamos como es su
estructura a nivel de bloques. La figura nos muestra la
arquitectura en sectores de una memoria Flash de 512Kx8. Cada uno
de los sectores se borra independientemente de los otros, siendo
necesario el borrado antes de la programacin.
Los datos se almacenan como una carga en la puerta flotante.
Inicialmente, toda la memoria se encuentra a nivel alto. Programar
la memoria es el proceso de cambiar un "1" lgico por un "0" lgico.
Borrar un sector cambia todos los "0" lgicos de ese sector por "1"
lgicos.No es posible reprogramar una determinada direccin: es
necesario borrar previamente todo el sector antes de volver a
programar esa direccin.Las celdas de memoria se encuentran
constituidas por un transistor MOS de puerta apilada, el cual se
forma con una puerta de control y una puerta aislada, tal como se
indica en la figura La compuerta aislada almacena carga elctrica
cuando se aplica una tensin lo suficientemente alta en la puerta de
control. De la misma manera que la memoria EPROM, cuando hay carga
elctrica en la compuerta aislada, se almacena un 0, de lo contrario
se almacena un 1.
Celda de memoria de una FLASHLas operaciones bsicas de una
memoria Flash son la programacin, la lectura y borrado.Como ya se
mencion, la programacin se efecta con la aplicacin de una tensin
(generalmente de 12V o 12.75 V) a cada una de las compuertas de
control, correspondiente a las celdas en las que se desean
almacenar 0s. Para almacenar 1s no es necesario aplicar tensin a
las compuertas debido a que el estado por defecto de las celdas de
memoria es 1.La lectura se efecta aplicando una tensin positiva a
la compuerta de control de la celda de memoria, en cuyo caso el
estado lgico almacenado se deduce con base en el cambio de estado
del transistor:Si hay un 1 almacenado, la tensin aplicada ser lo
suficiente para encender el transistor y hacer circular corriente
del drenador hacia la fuente.Si hay un 0 almacenado, la tensin
aplicada no encender el transistor debido a que la carga elctrica
almacenada en la compuerta aislada.Para determinar si el dato
almacenado en la celda es un 1 un 0, se detecta la corriente
circulando por el transistor en el momento que se aplica la tensin
en la compuerta de control.El borrado consiste en la liberacin de
las cargas elctricas almacenadas en las compuertas aisladas de los
transistores. Este proceso consiste en la aplicacin de una tensin
lo suficientemente negativa que desplaza las cargas como se indica
en la figura.
Proceso de descarga de una celda de memoria FLASH
Aparte de que las memorias EPROM "Flash" tienen una entrada de
escritura, mientras estn funcionando se comportan como las EPROM
normales. La nica diferencia se encuentra en como se cargan y se
borran los datos en la memoria. Mientras que durante el proceso de
programacin de las memorias EPROM convencionales se necesita una
tensin bien definida durante cierto intervalo de tiempo, y para
borrar el componente hay que exponerlo a luz ultravioleta, en las
E.Flash ambos procesos estn controlados y se llevan a cabo
internamente. Para tal efecto la memoria recibe una secuencia de
comandos predefinida (borrar, programar) que incluye algunas
precauciones especiales (determinadas por el fabricante) destinadas
a evitar que se borre cualquier dato por error.El comando se
transfiere a la memoria EPROM "Flash" mediante una serie de
operaciones de escritura. Los dos primeros comandos "Lectura/Reset"
preparan la memoria para operaciones de lectura. El comando
"Autoseleccin" permite leer el cdigo del fabricante y el tipo de
dispositivo. El comando "Byte" carga el programa dentro de la
memoria EPROM, mientras que "Borrar Chip" acta durante el proceso
de borrado, que no dura ms de un minuto. Desde el punto de vista
lgico podemos afirmar que la memoria EPROM "Flash" est dividida en
sectores que se pueden borrar individualmente con la ayuda del
comando "Borrar Sector".Las memorias EPROM "Flash" disponen de otro
mecanismo, basado en la divisin en sectores, que las protege de
acciones de escritura o lectura no deseadas. Cuando un sector est
protegido de esta forma no se puede realizar una operacin de
lectura o sobre escritura con una tensin de 5V. Este hecho es muy
importante y se debe tener siempre presente cuando se utilicen
estos dispositivos. Solamente se puede eliminar esta proteccin con
la ayuda de un programador especial.Durante el proceso de
programacin o borrado se puede leer, mediante un comando de acceso
en "lectura", el estado de la memoria EPROM "Flash" en la misma
posicin que el byte de programado o borrado. Mientras se borra un
sector se puede leer cualquier direccin que pertenezca al sector.
APLICACIONES DE LA MEMORIA FLASH La Memoria Flash es ideal para
docenas de aplicaciones porttiles. Tomemos como ejemplo las cmaras
digitales. Insertando una tarjeta de Memoria Flash de alta
capacidad directamente en la cmara, usted puede almacenar cientos
de imgenes de alta resolucin. Cuando este listo para bajarlas,
simplemente retire la tarjeta y transfirala a su computadora de
escritorio o porttil para su procesamiento. Las tarjetas de Memoria
Flash se ajustan a entradas Tipo II (con o sin adaptador,
dependiendo del tipo de tarjeta Flash). Ahora esta usted listo para
cargar en segundos todas las imgenes capturadas para observarlas,
manipularlas, enviarlas por correo electrnico o imprimirlas. Ya
nunca necesitara comprar rollos para fotografa. Sea cual sea su
aplicacin o equipo porttil.Actualmente, los usos de Memoria Flash
se estn incrementando rpidamente. Ya sean cmaras digitales,
Asistentes Digitales Porttiles, reproductores de msica digital o
telfonos celulares, todos necesitan una forma fcil y confiable de
almacenar y transportar informacin vital. Se utilizan en la
fabricacin de BIOS para computadoras. , generalmente conocidos como
FLASH-BIOS. La ventaja de esta tecnologa es que permite actualizar
el bios con un software proporcionado por el fabricante, sin
necesidad de desmontar el chip del circuito final, ni usar aparatos
especiales.Por esto la Memoria Flash se ha convertido en poco
tiempo en una de las ms populares tecnologas de almacenamiento de
datos. Es ms flexible que un diskette y puede almacenar hasta 160MB
de informacin. Es ms y mucho mas rpida que un disco duro, y a
diferencia de la memoria RAM, la Memoria Flash puede retener datos
aun cuando el equipo se ha apagado.La Memoria Flash es ideal para
docenas de aplicaciones porttiles. Tomemos como ejemplo las cmaras
digitales. Insertando una tarjeta de Memoria Flash de alta
capacidad directamente en la cmara, usted puede almacenar cientos
de imgenes de alta resolucin. Cuando este listo para bajarlas,
simplemente retire la tarjeta y transfirala a su computadora de
escritorio o porttil para su procesamiento. Las tarjetas de Memoria
Flash se ajustan a entradas Tipo II (con o sin adaptador,
dependiendo del tipo de tarjeta Flash). Ahora esta usted listo para
cargar en segundos todas las imgenes capturadas para observarlas,
manipularlas, enviarlas por correo electrnico o imprimirlas. Ya
nunca necesitara comprar rollos para fotografa.
EJEMPLO DE MEMORIA FLASH - 27F256La capacidad de esta memoria es
de 32K X 8 y como memoria Flash tiene la caracterstica particular
de ser borrada en un tiempo muy corto (1 seg.). El tiempo de
programacin por byte es de 100 ms y el tiempo de retencin de la
informacin es de aproximadamente 10 aos.
Caractersticas TcnicasReferencia28F256TipoFLASH EEPROMCapacidad
(bits)32768 X 8Tipo de salida(5V) (Vp=12.5V)Tiempos de
Acceso90/100/120/150 nsEncapsuladoDIL-28
Memoria Flash 27F256En la figura se indica la disposicin de los
pines de esta memoria con sus caractersticas tcnicas
bsicas.DIFERENCIA ENTRE MEMORIAS EEPROM Y EPROM FLASHLa diferencia
de las memorias flash con las EEPROM reside en su velocidad: Son ms
rpidas en trminos de programacin y borrado, aunque tambin necesitan
de una tensin de grabado del orden de 12 voltios.Otra diferencia la
encontramos en que en las EEPROM se puede borrar de formaselectiva
cualquier byte, mientras que en las memorias FLASH slo admite el
borrado total de la misma.Por otra parte esta memorias son bastante
ms baratas que las EEPROM, debido a que utilizan una tecnologa ms
sencilla y se fabrican con grandes capacidades de
almacenamiento. Un dato puede ser significativo: el tiempo de
borrado de un byte es del orden de 100 seg.
TABLA COMPARATIVA ENTRE MEMORIAS
3.- RESUMENMEMORIAS PROGRAMABLESMEMORIA ROM (READ ONLY MEMORY)Es
una memoria de slo lectura que se programan mediante mscaras. Es
decir, el contenido de las celdas de memoria se almacena durante el
proceso de fabricacin para mantenerse despus de forma irrevocable.
Desde el instante en que el fabricante grabo las instrucciones en
el Chip, por lo tanto la escritura de este tipo de memorias ocurre
una sola vez y queda grabado su contenido aunque se le retire la
energa. Se usa para almacenar informacin vital para el
funcionamiento del sistema: en la gestin del proceso de arranque,
el chequeo inicial del sistema, carga del sistema operativo y
diversas rutinas de control de dispositivos de entrada/salida
suelen ser las tareas encargadas a los programas grabados en ROM.
Estos programas forman la llamada BIOS (Basic Input Output System).
Junto a la BIOS se encuentra el chip de CMOS donde se almacenan los
valores que determinan la configuracin hardware del sistema, como
tipos de unidades, parmetros de los discos duros, fecha y hora del
sistema... esta informacin no se pierde al apagar la computadora.
Estos valores se pueden modificar por medio del SETUP. La ventaja
de tener los programas fundamentales del computador almacenados en
la ROM es que estn all implementados en el interior del computador
y no hay necesidad de cargarlos en la memoria desde el disco de la
misma forma en que se carga el DOS. Debido a que estn siempre
residentes, los programas en ROM son muy a menudo los cimientos
sobre los que se construye el resto de los programas (incluyendo el
DOS). Una ROM puede estar fabricada tanto en tecnologa bipolar como
MOS.
MEMORIA PROM (PROGRAMMABLE READ ONLY MEMORIES)En la PROM
(programable ROM), o memoria programable de slo lectura los
contenidos pueden ser ledos pero no modificados por un programa de
usuario. Sus contenidos no se construyen, como la ROM, directamente
en el procesador cuando ste se fabrica, sino que se crean por medio
de un tipo especial programacin, ya sea por el fabricante, o por
especialistas tcnicos de programacin del usuario. El proceso de
programacin es destructivo: una vez grabada, es como si fuese una
ROM normal.Las operaciones muy importantes o largas que se haban
estado ejecutando mediante programas, se pueden convertir en
microprogramas y grabarse permanentemente en una pastilla de
memoria programable slo de lectura. Una vez que estn en forma de
circuitos electrnicos, estas tareas se pueden realizar casi siempre
en una fraccin del tiempo que requeran antes. La flexibilidad
adicional que se obtiene con la PROM puede convertirse en una
desventaja si en la unidad PROM se programa un error que no se
puede corregir. Para superar esta desventaja, se desarroll la
EPROM, o memoria de solo lectura reprogrmale.Para conseguir que la
informacin que se desea grabar sea inalterable, se utilizan dos
tcnicas: por destruccin de fusible o por destruccin de unin.El
proceso de programacin de una PROM generalmente se realiza con un
equipo especial llamado quemador. Este equipo emplea un mecanismo
de interruptores electrnicos controlados por software que permiten
cargar las direcciones, los datos y genera los pulsos para fundir
los fusibles del arreglo interno de la memoria. En la figura se
indica de forma esquemtica la funcin del programador.a) Las
Aplicaciones ms importantes: b) Microprogramacin c) Librera de
subrutinas d) Programas de sistema e) Tablas de funcin
MEMORIA EPROM Las EPROM, o Memorias slo de Lectura
Reprogramables, se programan mediante impulsos elctricos y su
contenido se borra exponindolas a la luz ultravioleta (de ah la
ventanita que suelen incorporar este tipo de circuitos), de manera
tal que estos rayos atraen los elementos fotosensibles, modificando
su estado.Las EPROM se programan insertando el chip en un
programador de EPROM. y aplicando en un pin especial de la memoria
una tensin entre 10 y 25 Voltios durante aproximadamente 50 ms,
segn el dispositivo, al mismo tiempo se direcciona la posicin de
memoria y se pone la informacin a las entradas de datos. Este
proceso puede tardar varios minutos dependiendo de la capacidad de
memoria.
Cuando un dado bit de una celda debe ser cambiado o programado
de un 1 a un 0, se hace pasar una corriente a travs del canal de
transistor desde la fuente hacia la compuerta (obviamente, los
electrones siguen el camino inverso). Al mismo tiempo se aplica una
relativamente alta tensin sobre la compuerta superior o de control
del transistor, crendose de esta manera un campo elctrico fuerte
dentro de las capas del material semiconductor.Ante la presencia de
este campo elctrico fuerte, algunos de los electrones que pasan el
canal fuente-compuerta ganan suficiente energa como para formar un
tnel y atravesar la capa aislante que normalmente asla la compuerta
flotante. En la medida que estos electrones se acumulan en la
compuerta flotante, dicha compuerta toma carga negativa, lo que
finalmente produce que la celda tenga un 0.Los tiempos medios de
borrado de una EPROM, por exposicin a la luz ultravioleta, oscilan
entre 10 y 30 minutos.Tal como mencionramos anteriormente, el
proceso de borrado de los datos contenidos en una EPROM es llevado
a cabo exponiendo la misma a luz ultravioleta. El punto reside en
que la misma contiene fotones (Cuantos de energa electromagntica)
de energa relativamente alta.
MEMORIA EEPROM (ELECTRICAL ERASABLE PROGRAMMABLE READ ONLY
MEMORY)La memoria EEPROM es programable y borrable elctricamente y
su nombre proviene de la sigla en ingls Electrical Erasable
Programmable Read Only Memory. Actualmente estas memorias se
construyen con transistores de tecnologa MOS (Metal Oxide Silice) y
MNOS (Metal Nitride-Oxide Silicon).Las celdas de memoria en las
EEPROM son similares a las celdas EPROM y la diferencia bsica se
encuentra en la capa aislante alrededor de cada compuesta flotante,
la cual es ms delgada y no es fotosensible.
Las memorias EEPROM (Electrically Erasable Programmable
Read-Only Memory) son memorias no voltiles y elctricamente
borrables a nivel de bytes. La posibilidad de programar y borrar
las memorias a nivel de bytes supone una gran flexibilidad, pero
tambin una celda de memoria ms compleja. Adems del transistor de
puerta flotante anterior, es preciso un segundo transistor de
seleccin. El tener 2 transistores por celda hace que las memorias
EEPROM sean de baja densidad y mayor coste. La programacin requiere
de tiempos que oscilan entre 157s y 625s=byte. Frente a las
memorias EPROM, presenta la ventaja de permitir su borrado y
programacin en placa, aunque tienen mayor coste debido a sus dos
transistores por celda.Una ventaja adicional de este tipo de
memorias radica en que no necesitan de una alta tensin de grabado,
sirven los 5 voltios de la tensin de alimentacin habitual.
LECTURA 0
0
1
ESCRITURA 0 1 0
Ventajas de la EEPROM:Las palabras almacenadas en memoria se
pueden borrar de forma individual.Para borra la informacin no se
requiere luz ultravioleta.Las memorias EEPROM no requieren
programador.De manera individual puedes borrar y reprogramar
elctricamente grupos de caracteres o palabras en el arreglo de la
memoria.Para reescribir no se necesita hacer un borrado previo.
MEMORIA FLASHLa memoria FLASH es similar a la EEPROM, es decir
que se puede programar y borrar elctricamente, son de alta densidad
(gran capacidad de almacenamiento de bits). Alta densidad significa
que se puede empaquetar en una pequea superficie del chip, gran
cantidad de celdas, lo que implica que cuanto mayor sea la
densidad, ms bits se pueden almacenar en un chip de tamao
determinado. Sin embargo esta rene algunas de las propiedades de
las memorias anteriormente vistas, y se caracteriza por tener alta
capacidad para almacenar informacin y es de fabricacin sencilla, lo
que permite fabricar modelos de capacidad equivalente a las EPROM a
menor costo que las EEPROM.Aparte de que las memorias EPROM "Flash"
tienen una entrada de escritura, mientras estn funcionando se
comportan como las EPROM normales. La nica diferencia se encuentra
en como se cargan y se borran los datos en la memoria. Mientras que
durante el proceso de programacin de las memorias EPROM
convencionales se necesita una tensin bien definida durante cierto
intervalo de tiempo, y para borrar el componente hay que exponerlo
a luz ultravioleta, en las E.Flash ambos procesos estn controlados
y se llevan a cabo internamente. Para tal efecto la memoria recibe
una secuencia de comandos predefinida (borrar, programar) que
incluye algunas precauciones especiales (determinadas por el
fabricante) destinadas a evitar que se borre cualquier dato por
error.Durante el proceso de programacin o borrado se puede leer,
mediante un comando de acceso en "lectura", el estado de la memoria
EPROM "Flash" en la misma posicin que el byte de programado o
borrado. Mientras se borra un sector se puede leer cualquier
direccin que pertenezca al sector.
APLICACIONES DE LA MEMORIA FLASH La Memoria Flash es ideal para
docenas de aplicaciones porttiles. Tomemos como ejemplo las cmaras
digitales. Insertando una tarjeta de Memoria Flash de alta
capacidad directamente en la cmara, usted puede almacenar cientos
de imgenes de alta resolucin. Cuando este listo para bajarlas,
simplemente retire la tarjeta y transfirala a su computadora de
escritorio o porttil para su procesamiento. Las tarjetas de Memoria
Flash se ajustan a entradas Tipo II (con o sin adaptador,
dependiendo del tipo de tarjeta Flash). Ahora esta usted listo para
cargar en segundos todas las imgenes capturadas para observarlas,
manipularlas, enviarlas por correo electrnico o imprimirlas. Ya
nunca necesitara comprar rollos para fotografa. Sea cual sea su
aplicacin o equipo porttil.Actualmente, los usos de Memoria Flash
se estn incrementando rpidamente. Ya sean cmaras digitales,
Asistentes Digitales Porttiles, reproductores de msica digital o
telfonos celulares, todos necesitan una forma fcil y confiable de
almacenar y transportar informacin vital.
TABLA COMPARATIVA ENTRE MEMORIAS
PLDs
INTRODUCION
Los Dispositivos Logicos Programables (PLDs) fueron introducidos
a mediados de los 70s. La idea era construir circuitos lgicos
combinacionales que fueran programables. Al contrario de los
microcontroladores, que pueden correr un programa y poseen un
hardware fijo los PLDs permiten la modificacin a nivel de hardware.
En otras palabras, un PLD es un chip multi propsito cuyo hardware
se puede re configurar para realizar tareas particulares.
El primer PLD fue llamado PAL (Programmable Array Logic). Los
PAL solo utilizan compuertas lgicas (sin Flip-Flops), por lo que
solo permiten la implementacin de circuitos combinacionales. Para
superar esta limitacin luego fueron creados los registered PLDs los
cuales incluyen Flip-Flops en cada salida del circuito. Con estos
dispositivos es posible implementar funciones secuenciales
simples.
A comienzos de los 80s, se fueron agregando circuitos lgicos
adicionales a las salidas de los PLDs. La nueva celda de salida,
llamada Macrocell, contiene (a parte de Flip-Flops) puertas lgicas
y multiplexores. La celda en si es programable, permitiendo varios
modos de operacin. Adicionalmente provee una seal de retorno o
feedback desde la salida del cricuito al arreglo programable, lo
que le da una mayor flexibilidad. Esta nueva estructura fue llamada
generic PAL (GAL).
Todos estos chips (PAL, PLA, registered PLD, GAL/PALCE) son
conocidos en conjunto como SPLDs (Simple PLDs). La GAL/PALCE es la
nica que aun se fabrica en chips independientes.
Luego de esto se fabricaron chips con muchas GAL en su interior
utilizando una arquitectura mucho ms sofisticada, mejor tecnologa y
muchas otras caractersticas adicionales como soporte para JTAG.
Estas estructuras son conocidas como CPLD (Complex PLD). Los CPLD
son bastante populares por su alta densidad de puertas, alto
performance y bajo costo.
Finalmente a mediados de los 80s fueron introducidas las FPGA,
las cuales difieren de los CPLD en su arquitectura, tecnologa y
costos. Estos dispositivos fueron creados principalmente para la
implementacin de circuitos de alto rendimiento.
Todos los PLDs son no voltiles. Pueden ser OTP (one time
programmable) en cuyo caso son utilizados fusibles o anti fusibles
o pueden ser re programables, con EEPROM o memoria FLASH. Las FPGAs
por otro lado son la mayora voltiles puesto que utilizan SRAM para
almacenar las conexiones en estos casos generalmente se utiliza un
ROM externa para almacenar la configuracin inicial al momento del
encendido.
HISTORIA
A mediados de los aos setenta se produce una fuerte evolucin en
los procesos de fabricacin de los circuitos integrados, y junto a
las tecnologas bipolares, surge la MOS (metal oxide semiconductor),
principalmente la NMOS, promoviendo el desarrollo de circuitos
digitales hasta la primera mitad de los aos ochenta. En aquellas
pocas, el esfuerzo de diseo se concentraba en los niveles elctricos
para establecer caractersticas e interconexiones entre los
componentes bsicos a nivel de transistor. El proceso de diseo era
altamente manual y tan solo se empleaban herramientas como el
PSPICE para simular esquemas elctricos con modelos previamente
personalizados a las distintas tecnologas. A medida que pasaban los
aos, los procesos tecnolgicos se hacan ms y ms complejos. Los
problemas de integracin iban en aumento y los diseos eran cada vez
ms difciles de depurar y de dar mantenimiento. Inicialmente los
circuitos integrados de MSI (Morrad Scale Integration) y LSI (Low
Scale Integration) se diseaban mediante la realizacin de prototipos
basados en mdulos muy sencillos. Cada uno de estos mdulos estaba
formado por puertas lgicas ya probadas, este mtodo poco a poco, iba
quedndose obsoleto. En ese momento (finales de los aos setenta) se
constata el enorme desfase que existe entre tecnologa y diseo.
Alrededor de 1981 el Departamento de Defensa de los Estados Unidos
desarrolla un proyecto llamado VHSIC (Very High Speed Integrated
Circuit) su objetivo era rentabilizar las inversiones en hardware
haciendo ms sencillo su mantenimiento. Se pretenda con ello
resolver el problema de modificar el hardware diseado en un
proyecto para utilizarlo en otro, lo que no era posible hasta
entonces porque no exista una herramienta adecuada que armonizase y
normalizase dicha tarea, era el momento de los HDLs. El desarrollo
de la electrnica digital moderna a finales del siglo pasado y
principios de este trajo consigo que las tcnicas de miniaturizacin
de los elementos se fueran desarrollando cada vez ms obteniendo un
alto nivel de integracin en los elementos, trayendo consigo un gran
nmero de ventajas , por citar algunas tenemos:
No necesitan voltajes de alimentacin muy elevados, ni grandes
consumos de corriente por lo que las fuentes de alimentacin son
pequeas y de poca potenciaEn la metodologa de diseo las dimensiones
topolgicas de las estructuras han disminuido, llevando todo esto a
una reduccin de los costosDebido a la reduccin de sus costos de
diseos que llev consigo el constante desarrollo del software y el
hardware trajo aparejado el surgimiento despus de varios aos de los
dispositivos lgicos programables o PLDs dentro de ellos las FPGAs
(Field Progammable Gate Arrays).
VENTAJAS DE LOS PLD
Los PLDs estn desplazando, cada vez ms, a la lgica discreta y a
otros tipos de circuitos ASIC debido a las mltiples ventajas que
ofrecen. Algunas de estas son:
Pueden reemplazar a varios componentes discretos, reduciendo con
ello el nmero de circuitos integrados a utilizar. Esto a su vez
supone:Reduccin de espacio.Reduccin del nmero de
conexiones.Reduccin de la potencia de consumo.Disminucin del
coste.Aumento de la fiabilidad.La mayor parte de ellos ofrecen una
gran flexibilidad al permitir reprogramar el circuito lgico a la
medida, pudiendo obtener diferentes configuraciones para un mismo
dispositivo.Esta posibilidad que brindan algunos PLDs de ser
reprogramados, permite que se elimine el riesgo de errores a la
hora de la grabacin. Se reducen los costos de stock, al poder
utilizar el mismo dispositivo para aplicaciones distintas, sin ms
que hacer programaciones distintas.Gran facilidad de diseo porque
las herramientas disponibles para este fin simplifican
considerablemente el proceso de diseo, haciendo que la
implementacin al ms bajo nivel sea transparente para el usuario. El
sistema de desarrollo consiste en un software de diseo y un
programador, donde el software, es en esencia, un ensamblador que
transforma el diseo de alto nivel que hace el usuario (ecuaciones
booleanas, tablas de la verdad, diagramas de estado y esquemticos)
a bajo nivel o nivel de programacin del dispositivo. Adems los
software que existen en el mercado disponen de simulador, lo que
permite hacer depuraciones del diseo antes de programar el
componente.
DESVENTAJAS DE LOS PLD
Algunos aspectos negativos a sealar en estos circuitos vienen
dado en que las tcnicas de los circuitos impresos cambian
considerablemente, la seleccin del encapsulado no es trivial, las
conexiones entre terminales son muy pequeas y surge la necesidad de
utilizar una circuitera adicional para el control de la calida.
Estructura bsica de una PLD
La estructura bsica de una PLD permite realizar cualquier tipo
de circuito combinacional basndose en una matriz formada por
puertas AND, seguida de una matriz de puertas OR. Tres son los
tipos ms extendidos de PLDs, la PROM, PLA, y la GAL.EL USO
DEROMSCOMO PLDS
Antes de que se inventasen las PLDs, los chips dememoria de solo
lectura(ROM) se utilizaban para crear funciones delgica
combinacionalarbitrarias con un nmero determinado de entradas.
Considerando una ROM conmentradas, a las que se denominalneas de
direccin; y connsalidas, a las que se denominalneas de datos.
Cuando se utiliza como memoria, la ROM contienepalabras denbits.
Supongamos que las entradas no son direccionadas por una direccin
dem-bits, sino pormseales lgicas independientes. Tericamente,
hayfunciones booleanasposibles de estasmseales, pero la estructura
de la ROM permite solo producirnde estas funciones en los pines de
salida. Por lo tanto, en este caso, la ROM se vuelve un equivalente
dencircuitos lgicos separados, cada uno generando una funcin
elegida de lasmentradas.La ventaja de utilizar una ROM de esta
forma es que cualquier funcin concebible de lasmentradas puede ser
colocada por lasnsalidas, haciendo este el dispositivo lgico
combinacional de mayor propsito general disponible. Tambin
lasPROMs(ROMsprogramables),EPROMs(PROMsde borrado porultravioleta)
yEEPROMs(PROMsde borrado elctrico) disponibles pueden ser
programadas de esta manera con un programador PROM hardware o
software. Sin embargo, existen varias desventajas: Son bastante ms
lentas que los circuitos lgicos dedicados. No necesariamente pueden
proveer de "proteccin" ante transiciones lgicas asncronas. Consumen
mayor potencia. Slo se utiliza una pequea fraccin de su capacidad
en una sola aplicacin: un uso ineficiente del espacio. Por si solas
no pueden ser utilizadas para circuitos delgica secuencial, puesto
que no contienenbiestables. Para realizar algunos circuitos
secuenciales (como mquinas de estado) se utilizaba un
registroTTLexterno.LasEPROMscomunes (como la 2716), se siguen
utilizando a veces de esta forma por gente que tiene como hobby el
diseo de circuitos, ya que a menudo tienen algunas sueltas. A las
ROM utilizadas de esta manera se las conoce como la "PALdel
pobre".
LGICA PROGRAMABLE TEMPRANAEn 1970,Texas Instrumentsdesarroll
unCIde mscara programable basado en la memoria asociativa de slo
lectura (ROAM) deIBM. Este dispositivo, el TMS2000, era programado
alterando la capa metlica durante la produccin del CI. El TMS2000
tena hasta 17 entradas y 18 salidas con 8biestablesJK como memoria.
Texas Instruments acuo el trminoProgrammable logic arraypara este
dispositivo.En 1973National Semiconductorintrodujo un
dispositivoPLAde mscara programable (DM7575) con 14 entradas y 8
salidas sin registros de memoria. Este era ms popular que el de
Texas Instruments, pero el coste de hacer la mscara metlica
limitaba su uso. El dispositivo es significativo por ser la base de
laFPGA(Field Programmable Logic Array) producido porSigneticsen
1975, el 82S100.En 1971,General Electricdesarrollaba un PLD basado
en la nueva tecnologaPROM. Este dispositivo experimental mejor el
ROAM de IBM permitindole realizar lgica multinivel.Intelacababa de
introducir la PROM de puerta flotante borrable porUVpor lo que los
desarrolladores en General Electric incorporaron esa tecnologa. El
dispositivo de General Electric era el primer PLD jams
desarrollado, antecesora del EPLD deAlteraen una dcada. General
Electric obtuvo varias patentes tempranas en PLDs.En 1974, General
Electric firm un acuerdo conMonolithic Memoriespara desarrollar un
PLD de mscara programable incorporando las innovaciones de General.
El dispositivo se bautiz comoProgrammable Associative Logic
Array(PALA, matriz lgica asociativa programable). El MMI 5760 fue
terminado en 1976 y poda implementar circuitos multinivel o
secuenciales de ms de 100 puertas. El dispositivo estaba soportado
por el entorno de desarrollo de General, donde las ecuaciones
Booleanas podan ser convertidas a patrones de mscara para
configurar el dispositivo. El integrado nunca se comercializ (hasta
ahora debido a lo antes comentado).PALMMI introdujo un dispositivo
revolucionario en 1978, laProgrammable Array Logic(Matriz lgica
programable). La arquitectura era ms sencilla que la FPLA
deSigneticsporque omita la matrizORprogramable. Esto hizo los
dispositivos ms rpidos, ms pequeos y ms baratos. Estaban
disponibles en encapsulados de 20 pines y DIP de 300 milsimas de
pulgada, mientras que las FPLAs venan en encapsulados de 28 pines y
DIP de 600 milsimas de pulgada. Ciertas publicaciones sobre PALs
desmitificaban el proceso de diseo. El software de diseo PALASM
(PAL Assembler,ensambladorPAL) converta las ecuaciones Booleanas de
los ingenieros en el patrn de fusibles requerido para programar el
dispositivo. Los PAL de MMI pronto fueron distribuidos por National
Semiconductor, Texas Instruments y AMD.Tras el xito de MMI con los
PAL de 20 pines,AMDintrodujo los22V10de 24 pines con caractersticas
adicionales. Tras comprar a MMI (1987), AMD desarroll una operacin
consolidada comoVantis, adquirida porLattice Semiconductoren
1999.
Tambin hay PLAs: Programmable Logic Array.GALs
Lattice GAL 16V8 y 20V8.Una innovacin del PAL fue lamatriz lgica
genrica(Generic array logic) oGAL. Ambas fueron desarrolladas
porLattice Semiconductoren 1985. Este dispositivo tiene las mismas
propiedades lgicas que el PAL, pero puede ser borrado y
reprogramado. La GAL es muy til en la fase de prototipado de un
diseo, cuando un fallo en la lgica puede ser corregido por
reprogramacin. Las GALs se programan y reprograman utilizando un
programador OPAL, o utilizando la tcnica de programacin circuital
en chips secundarios.Un dispositivo similar
llamadoPEEL(programmable electrically erasable logicolgica
programable elctricamente borrable) fue introducido por la
International CMOSFUNCIONAMIENTO DEL GALUna GAL permite implementar
cualquier expresin en suma de productos con un nmero de variables
definidas. El proceso de programacin consiste en activar o
desactivar cada celda E2CMOS con el objetivo de aplicar la
combinacin adecuada de variables a cada compuerta AND y obtener la
suma de productos.Las celdas E2CMOS activadas conectan las
variables deseadas o sus complementos con las apropiadas entradas
de las puertas AND. Las celdas E2CMOS estn desactivadas cuando una
variable o su complemento no se utiliza en un determinado producto.
La salida final de la puerta OR es una suma de productos. Cada fila
est conectada a la entrada de una puerta AND, y cada columna a una
variable de entrada o a su complemento. Mediante la programacin se
activa o desactiva cada celda E2CMOS, y se puede aplicar cualquier
combinacin de variables de entrada, o sus complementos, a una
puerta AND para generar cualquier operacin producto que se desee.
Una celda activada conecta de forma efectiva su correspondiente
fila y columna, y una celda desactivada desconecta la fila y la
columna.celdas se pueden borrar y reprogramar elctricamente. Una
celda E2CMOS tpica puede mantener el estado en que se ha programado
durante 20 aos o ms. Las macroceldas lgicas de salida (OLMCs) estn
formadas por circuitos lgicos que se pueden programar como lgica
combinacional o como lgica secuencial. Las OLMCs proporcionan mucha
ms flexibilidad que la lgica de salida fija de una PAL.