Diseño de la memoria
Principal: Categorías de RAM y
ROM
La memoria
principal se divide en RAM (read
access memory)
y ROM (read only memory).
La RAM de semiconductores,
construida a partir de transistores
bipolares, son memorias
estáticas, ya que retienen la información durante largos períodos
de tiempo.
La RAM de semiconductores
diseñadas empleando transistores MOS
(metal óxido semiconductor- tecnología usada para
la fabricación de circuitos
integrados a gran escala). Estos
transistores
van descargándose lentamente, de modo que un 1 puede
acabar transformándose en un 0 si no se adoptan ciertas
precauciones. Estas se denominan dinámicas.
La ROM( Read Only Memory), o Memoria de solo
lectura,
contiene programas o
datos
construidos permanentemente por el fabricante, en la memoria del
procesador. Son
memorias no
volátiles.
Algunas ROM se fabrican en función de los
requisitos del cliente. Es el
fabricante el que programa la ROM
grabando en ella su contenido. Debido al proceso que se
emplea para grabar los datos en este
tipo de ROM se las denomina a veces memorias
programadas por máscara (mask programmable
ROM).
Algunas veces el usuario puede necesitar programar las
ROM por su cuenta. Así, en una ROM con conexión por
fusible, programar la ROM supone únicamente fundir algunos
de estos fusibles mediante impulsos eléctricos. Este tipo
de memoria se
denomina memorias PROM
(programable ROM).
En la PROM ( Programmable ROM), o memoria
programable de sólo lectura los
contenidos pueden ser leídos 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 "programación", ya sea por el fabricante, o
por especialistas técnicos de programación del usuario. Las operaciones muy
importantes o largas que se habían estado
ejecutando mediante programas, se
pueden convertir en microprogramas y grabarse permanentemente en
una pastilla de memoria
programable sólo de lectura. Una
vez que están en forma de circuitos
electrónicos, estas tareas se pueden realizar casi siempre
en una fracción del tiempo que
requerían 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
reprogramable.
Con la EPROM (Erasable Programmable ROM) , cualquier
porción puede borrarse exponiéndola a una luz ultravioleta
y luego reprogramarse. La EEPROM o EAROM (Electrically Alterable
ROM) es una memoria de solo lectura
reprogramable eléctricamente sin necesidad de extraerlas
de la tarjeta del circuito. Estas memorias
suelen denominarse 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. Son adecuadas para
situaciones en las que las operaciones de
escritura
existen, pero son muchísimo menos frecuentes que las de
lectura.
El sistema operativo
actúa como interfase entre los programas en
ejecución y los recursos de
hardware de la
PC, proveyendo además su administración.
No obstante, existe un escalón más bajo
aun de software, que
permite al operativo y a programas
entenderse con los dispositivos de hardware. Se trata del
BIOS (Basic
Input Output System).
El BIOS consiste,
hablando mas propiamente, en firmware, es decir, software grabado en una
memoria no volátil y de solo lectura (ROM). Habitualmente
se trata de una PROM o EPROM, en la que se ha grabado el software necesario para
garantizar el arranque (start up) del equipo, la carga del
operativo y la provisión de "servicios"
para la operación de periféricos.
Desde el punto de vista físico, el BIOS reside en
una o dos PROMs, normalmente identificadas con el copyright y la
versión del Firmware contenido. Considerado como memoria
(de sólo lectura), el BIOS se
encuentra mapeado en el segmento F000h. Es posible programar
algunos equipos para que copien el código de la ROM a
algún área de RAM, y ejecuten
el BIOS desde
allí, con la ventaja de un mejor tiempo de
acceso.
El reemplazo del BIOS, sea por mejoramiento (upgrade), o
para sustituir una versión defectuosa requiere un poco mas
de paciencia y cuidado.
El primer paso es obtener el BIOS adecuado, teniendo en
cuenta en la elección las características del equipo y la
proveniencia y confiabilidad del Firmware. En definitiva, el BIOS
a instalar dependerá del motherboard.
Como hasta no haber probado con el equipo en
funcionamiento no se tendrá seguridad de que
la sustitución fue exitosa, se recomienda manejar con
cuidado el chip original.
La EPROM de BIOS se reconoce fácilmente en el
motherboard por estar etiquetada por el fabricante, aunque se
debe ser precavido pues el equipo puede contener dispositivos
parecidos, como EPROM de controlador de teclado.
Una vez identificado el o los chips, se puede proceder
al cambio. Cuando
son dos, están identificados como HIGH o
EVEN y LOW u ODD. Esto se refiere a que los
bytes de dirección par e impar se almacenan en chips
separados. Además debe siempre observarse la muesca de
orientación.
Las EPROM, o Memorias sólo de Lectura
Reprogramables, se programan mediante impulsos eléctricos
y su contenido se borra exponiéndolas 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 –
Las EPROM se programan insertando el chip en un
programador de EPROM y activando cada una de las direcciones del
chip, a la vez que se aplican tensiones de -25 a -40 V a los
pines adecuados. Los tiempos medios de
borrado de una EPROM, por exposición a la luz ultravioleta,
oscilan entre 10 y 30 minutos.
Con el advenimiento de las nuevas tecnologías
para la fabricación de circuitos
integrados, se pueden emplear métodos
eléctricos de borrado. Estas ROM pueden ser borradas sin
necesidad de extraerlas de la tarjeta del circuito. Además
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 sólo lectura presentan un esquema
de direccionamiento similar al de las memorias RAM. El microprocesador
no puede cambiar el contenido de la memoria
ROM.
Nótese que las líneas de datos (como se ve
en el gráfico a continuación) tienen un
único sentido, orientado hacia el microprocesador.
Esto significa que la información sólo puede salir
de la memoria
hacia el microprocesador.
La ROM requerida se selecciona conectando a las líneas de
selección de circuito las señales apropiadas
provenientes de la barra de direcciones, y la dirección específica de memoria
mediante las líneas A0-A9 de la barra de
direcciones.
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 máquina 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 también son medios de
almacenamiento de
información).
Estos dispositivos semiconductores
integrados están generalmente construidos en tecnología MOS
(Metal-Oxide Semiconductor, Semiconductor de Oxido
Metálico) o -más recientemente- CMOS (Complementary
Metal-Oxide Semiconducto o Semiconductor de Oxido Metálico
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 mínimo de memoria
no volátil donde almacenar ya sea un sistema
operativo, un programa de
aplicación, un lenguaje
intérprete, o una simple rutina de "upload", es necesario
utilizar un dispositivo que preserve su información de manera al menos
semi-permanente. Y aquí es donde comienzan a brillar las
EPROMs.
Recordemos que son memorias de acceso aleatorio,
generalmente leídas y eventualmente borradas y
reescritas.
Una vez grabada una EPROM con la información 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 modificación en la
información contenida o bien para ser utilizada en otra
aplicación, la EPROM es retirada del sistema, borrada
mediante la exposición 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 exposición 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 más
pequeña que fuese la eventual modificación a
realizar en su contenido, inevitablemente se deberá borrar
y reprogramar en su totalidad.
Las EPROMs almacenan bits de datos en celdas
formadas a partir de transistores
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 dióxido de
silicio; la compuerta superior o compuerta de control es la
efectivamente conectada a la circuitería
externa.
La cantidad de carga eléctrica almacenada sobre
la compuerta flotante determina que el bit de la celda contenga
un 1 o un 0; las celdas cargadas son leídas
como un 0, mientras que las que no lo están son
leídas como un 1. Tal como las EPROMs salen de la
fábrica, 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
través 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 tensión sobre la compuerta superior
o de control del
transistor,
creándose de esta manera un campo eléctrico fuerte
dentro de las capas del material semiconductor.
Ante la presencia de este campo eléctrico fuerte,
algunos de los electrones que pasan el canal fuente-compuerta
ganan suficiente energía como para formar un túnel
y atravesar la capa aislante que normalmente aísla 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.
Tal como mencionáramos 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
energía electromagnética) de energía
relativamente alta.
Los fotones incidentes excitan los
electrones(partícula elemental, electrónicamente
negativa, de los átomos) almacenados en la compuerta
flotante hacia un estado de
energía lo suficientemente alta como para que los mismo
puedan formar un túnel a través de la capa aislante
y "escapar" de la compuerta flotante, lo que descarga la misma y
retorna la celda al estado
1.
Los dispositivos EPROM de la familia
2700 contienen celdas de almacenamiento de
bits configuradas como bytes direccionables individualmente.
Habitualmente esta organización interna suele denominarse como
2K x 8 para el caso de una 2716, 8k x
8 para una 2764, etc.
En la figura anterior, podemos observar a modo de
ejemplo el diagrama de
bloques de una EPROM del tipo 2764. Allí podemos observar
la matriz formada
por celdas de almacenamiento
como la anteriormente descripta, rodeada de la lógica
asociada de decodificación y selección, buffers de
salida, etc.
Por razones de compatibilidad (tanto con dispositivos
anteriores como con dispositivos futuros), la gran mayoría
de las EPROMs se ajustan a distribuciones de terminales o
"pin-outs" estándar. Para el caso mas usual, que es el
encapsulado DIP (Dual In-Line Package) de 28 pines, el
estándar utilizado es el JEDEC-28.
En cuanto a la programación de estos dispositivos (si bien
conceptualmente obedece siempre a la metodología descripta anteriormente) en
realidad existe una relativamente alta variedad de
implementaciones prácticas.
Si bien en la actualidad parece haberse uniformado
razonablemente, las tensiones de programación varían en
función tanto del dispositivo, como del fabricante;
así nos encontramos con tensiones de programación (Vpp) de 12,5V, 13V, 21V y
25V.
Lo mismo sucede con otros parámetros importantes
que intervienen en el proceso de
grabación de un EPROM, como es el caso de la
duración de dicho pulso de programación y los
niveles lógicos que determinan distintos modos de
operación.
PROGRAMADOR/ EMULADOR
DE FLASH
EPROM
La manera más cómoda, aunque
también la más costosa de desarrollar circuitos
microcontroladores consiste en simular la parte
principal del controlador con la ayuda de un emulador. Una de
opciones más baratas consiste en emplear un programa monitor junto
con un emulador de memorias EPROM. Desafortunadamente, la
mayoría 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 básicamente
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
señales necesarias para introducir el flujo de datos a la
memoria
RAM.
Cuando compañías como AMD desarrollaron
las memorias EPROM "Flash" con una
tensión de programación de 5V y un ciclo de vida
que permitía programar la memoria
hasta 100.000 veces, se abrieron las puertas a un nuevo modelo de
emulador de memorias EPROM. El diseño
que se presenta no solo actúa como un emulador con una
enorme capacidad de almacenamiento,
sino que también funciona como un programador de memorias
EPROM "Flash",
ahorrándose comprar un sistema
exclusivamente dedicado a programar.
Cuando se termine de trabajar con el emulador durante la
fase del diseño,
se dispondrá en la memoria EPROM "Flash" del
código definitivo, que se sacará del emulador y se
introducirá en el circuito que se vaya a utilizar en la
aplicación. 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.
Qué es una
memoria EPROM "Flash"
Aparte de que las memorias EPROM "Flash" tienen una
entrada de escritura,
mientras están 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
programación de las memorias EPROM convencionales se
necesita una tensión bien definida durante cierto
intervalo de tiempo, y para
borrar el componente hay que exponerlo a luz ultravioleta, en las
E.Flash ambos procesos
están 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,
como se indica en la tabla 1. Los dos primeros comandos
"Lectura/Reset" preparan la memoria para operaciones de
lectura. El comando "Autoselección" permite leer el
código del fabricante y el tipo de dispositivo. El comando
"Byte" carga el programa dentro de la memoria EPROM, mientras que
"Borrar Chip" actúa durante el proceso de
borrado, que no dura más de un minuto. Desde el punto de
vista lógico 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 división 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 operación
de lectura o sobre escritura con una tensión de 5V. Este
hecho es muy importante y se debe tener siempre presente cuando
se utilicen estos dispositivos. Solamente se puede eliminar esta
protección con la ayuda de un programador
especial.
Durante el proceso de programación o borrado se
puede leer, mediante un comando de acceso en "lectura", el estado de
la memoria EPROM "Flash" en la misma posición que el byte
de programado o borrado. Mientras se borra un sector se puede
leer cualquier dirección que pertenezca al
sector.
Durante la secuencia de programación, el bit de
orden superior (DQ7) del byte que se está leyendo toma el
valor negado
del bit que se esté programando, mientras que DQ5 se
mantiene a 0. Cuando el ciclo de programación
termina correctamente se deshace esta inversión y los bits 5 y 7 toman los valores
planeados.
Como durante una secuencia de borrado parece que todas
las posiciones de la memoria están programadas con el
valor FFH, el
bit 7 permanece invariablemente a cero durante este proceso.
Cuando alguno de los dos procesos
excede cierto límite de tiempo, que está
determinado internamente, se produce un "error de
temporización", entonces el bit 5 toma el valor 1
mientras que el bit 7 se mantiene invertido. La función
que implementa el bit 6 está condicionada por el requisito
de compatibilidad. El bit 3 se utiliza cuando se borran
simultáneamente varios sectores. Sin embargo, el emulador
descrito no tiene estas características.
En la figura 1 se muestra e
diagrama de
bloques del emulador/programador. Detrás de la interfase
paralelo con el PC encontramos dos registros de
direcciones, un registro de datos
y un multiplexor que reduce a dos el número de
líneas de datos que van hacia el PC. En el centro del
circuito se encuentra la memoria EPROM.
Mientras que el programa la memoria el resto de los
bloques permanecen inactivos. En el modo emulador se lee la
memoria mediante el circuito que realiza la aplicación, a
través del "buffer". El circuito está conectado al
bloque llamado "Sonda del emulador".
Debido a las características propias de este circuito
sería muy difícil realizar la
comunicación con el PC mediante un puerto Centronics,
se necesitaría un programa y unos circuitos
extremadamente complejos. Por este motivo, aunque el
programador/emulador utiliza el puerto
paralelo del PC, no se utiliza el protocolo
estándar Centronics.
Además de ocho líneas de datos, el
puerto
paralelo proporciona cuatro líneas de control hacia el
emulador y cinco líneas de estado que
pueden emplear los comandos de
escritura y lectura.
Se utilizan tres líneas de estado para generar
las señales de reloj de los registros IC2,
IC3 e IC4, que controlan un total de 19 líneas de
direcciones (desde A0 hasta A18), una línea para la
señal OE, y cuatro líneas para seleccionar una
señal CE (desde CE1 hasta CE4). La señal WE se
genera a partir de las cuatro líneas de control. Como la
memoria EPROM solamente copia el byte sobre el bus de datos durante el
flanco de la señal WE, tanto los registros como la
memoria EPROM comparten las 8 líneas de datos disponibles
en la interfase paralelo. Durante las operaciones de
lectura (OE = nivel bajo), el integrado IC5 desconecta la memoria
EPROM de las líneas de datos. Esto se consigue invirtiendo
la señal OE (en IC1c) y aplicándola a la
señal de habilitación para IC5.
Sólo hay cinco líneas disponibles para
leer un byte, de manera que se necesitan dos multiplexores
4-a-1 para reducir las 8 líneas de datos a dos. Por este
motivo el PC tiene que acceder cuatro veces a estas líneas
para leer completamente cada byte. Como los registros
únicamente copian los datos sobre las líneas de
datos durante el flanco de subida de las señales CLK1,
CLK2, y CLK3, se pueden usar éstas señales para
controlar los multiplexores.
Sin embargo, respecto al programa de control conviene
tener en cuenta que cada vez que cambia el estado de
las líneas de control solamente está disponible ese
byte específico, el cual pertenece al registro cuya
línea CLK ha cambiado de nivel bajo a nivel alto. La
disposición de las líneas de datos del multiplexor
es tal que el bit 7 y el bit 5 se seleccionan
automáticamente después de la última
operación de escritura de una secuencia de comandos. La
distribución de la señal a
través de los multiplexores
permite que el circuito que lee el byte completo sea muy
sencillo.
El cambio entre
el modo emulador y el modo programador se realiza de la misma
forma. Cuando una de las tres líneas de control toma un
nivel alto, los tres inversores con colector abierto,
configurados en OR-cableada (IC1 d, IC1 e, IC1 f), aseguran que
actúe la señal "Carga" (toma un nivel bajo). Esto
permite habilitar las salidas de los registros IC2,
IC3 e IC4, al igual que el integrado IC5, de tal manera que tanto
las líneas de direcciones como las líneas de datos
del circuito maestro se mantienen separadas de las
correspondientes líneas de memoria EPROM. m
Al mismo tiempo se prepara la señal "Reset", lo
que permite que el pin RST (en el transistor FET
T1) tome un nivel bajo, y el pin llamado RST+ tome un nivel alto.
Cuando se aplica una señal "Reset" (activa el nivel alto)
se puede aplicar una tensión de +5V (con el puente
cerrado), o "robar" el nivel correspondiente del circuito (a
través del pin RST+). La última opción es
especialmente interesante cuando se usa un miembro de la familia de
microcontroladores 80C51, porque permite conectar
en paralelo el condensador que suele acompañar a la
línea "Reset". Se podría seguir enunciando el modo
de funcionamiento del programador/emulador, pero
deberíamos insertarnos aún más en la
conceptualización electrónica, por lo que consideramos que
las nociones vertidas son suficientes para realizar nuestro
estudio pertinente.
Figura 1. Diagrama de
Bloques del programador/emulador de memorias
EPROM , y distintas posiciones del
bloque de interruptores.
Programando las
memorias EPROM "Flash"
Cuando se utiliza el emulador como programador, S3
permite quitar la memoria EPROM sin ningún riesgo, y sin
tener que desconectar el programador de PC o de la fuente de
alimentación. El interruptor simplemente
deshabilita la tensión de alimentación de 5V.
También hace que la señal /WE quede conectada a 0 V
y desconecta la señal "Carga", de tal manera que tanto las
salidas del registro como las
salidas del "driver" del bus queden deshabilitadas.
Entonces el diodo D3 y el inversor bloquean las señales de
los "driver" de las líneas de dirección del circuito de
aplicación. Todas las líneas quedan conectadas a 0V
a través de los conjuntos de
resistencias
(R7, R8, R9 y R10). Cuando se apaga el diodo LED D1 se puede
retirar la memoria EPROM.
El interruptor S1 permite utilizar el emulador de manera
autónoma. Cuando se desconecta el emulador del PC las
resistencias
del "pull-up" (R1 y R2) fuerzan que todas las líneas tomen
un nivel alto. En una situación normal esto
provocaría que el circuito comenzase a trabajar en modo
programador, pero como la señal "Carga" está
bloqueada por el interruptor S1 y la resistencia de
"pull-up" R2, el circuito permanece en modo emulador.
Uso Práctico
del Programador/Emulador de EPROM "Flash"
Es compatible con las memorias EPROM "Flash" 29F040 y
29F010 de AMD. Como ambas tienen la misma secuencia de comandos no es
necesario hacer ninguna distinción. Unicamente puede
producirse algún problema si se intenta cargar un fichero
con un tamaño mayor que la capacidad de almacenamiento de
la memoria. El programa no detecta esta
situación.
Se pueden conectar hasta cuatro emuladores a un
único puerto
paralelo. Como la mayoría de los PC s disponen de tres
puertos paralelos (LPT1, LPT2 y LPT3) podremos controlar hasta 12
emuladores. Las resistencias
R1 y R2 sólo se conectan al último emulador. A
través del interruptor DIP S2 se selecciona uno de los
emuladores que esté conectado a un puerto particular. Si
la memoria EPROM que se va a emular tiene un espacio de
direcciones menor que una memoria EPROM "Flash", entonces las
líneas de direcciones se pueden desactivar mediante unos
puentes o el interruptor DIP S4. Cuando tanto el interruptor como
el puente asociado están abiertos, la línea de
direcciones correspondiente se mantiene a nivel bajo gracias a
una resistencia
"pull-down". Se comprobará que existen memorias EPROM que
esperan que en los pines que no se utilizan haya un nivel alto.
Si cuando se trabaja con una de esas memorias la línea de
direcciones no está adecuadamente desconectada, el
emulador no funcionará correctamente. Por este motivo se
recomienda comprobar siempre que todos los interruptores y todos
los puentes están en la posición correcta, y que
todas las líneas de direcciones que no se utilizan
están desconectadas.
Otro error que se puede cometer facilmente consiste en
intentar cargar ficheros hexadecimales. El programa
únicamente admite ficheros binarios.
Algunos Programas
para el emulador /programador de EPROM
"Flash"
Parámetros comunes:
/L<puerto><ce> donde <puerto> hace
referencia a LPT1, LPT2 o LPT3 , y <ce> hace referencia al
emulador CE1, o al CE2, CE3 o CE4.
Por ejemplo, se conecta el emulador 1 al LPT2, entonces
los parámetros serán /L21.
Ejemplos de Programas para el programador de memorias
EPROM "Flash":
ERAFLASH /L<puerto><ce>: borra la memoria
EPROM que se encuentre en el emulador.
PRGFLASH /L<puerto><ce><fich.binario>:
programa la memoria EPROM "Flash" con el fichero binario que se
especifique. No se comprueba si el fichero cabe realmente en la
memoria. Si el tamaño es mayor que la capacidad de la
memoria la rutina de verificación dará un
error.
RDFLASH /L<puerto><ce><fichero>
/B<número>: lee <número> bytes del
contenido de la memoria EPROM instalada en el emulador y los
copia en <fichero>. Como el programa no conoce el
tamaño de la memoria que estáconectada no se
comprueba si <número> es un valor
demasiado grande.
Ejemplos de Programas para el
emulador:
LOADEMU /L<puerto><ce><fich.binario> :
el programa configura en modo de carga el emulador que se
selecciona con el parámetro /L, borra la memoria "Flash",
carga el fichero <fich.binario>, y vuelve al modo
emulador.
RESETAPP /L<puerto><ce>: permite inicializar
la aplicación que se esté ejecutando en el circuito
maestro a través del emulador que se seleccione con el
parámetro /L. Se genera un pulso "reset" con una
duración de 1s y se transfiere al circuito
maestro.
En las
fotografías se presentan diferentes modelos de los
tantos borradores de EPROMs existentes.
- Técnicas digitales con Circuitos
Integrados. – Gimzburg- - Revista Radio
Práctica Electrónica Nº 2329 (
Artículo de Favio Wainstein). - Revista Elektor Nº 194 (Artículo de C. F.
Urban) - Revista PC Práctica Nº 5 (Artículo
del Lic. Fernando A. Tasso) - Revista Electonics Now Nº 11
- Microprocesador Z80 – Nichols – Rony-
- Revista Elektor Nº 89
- Revista Electrónica y Telecomunicaciones Año 1 Nº
6 - Microprocesadores – Cristiani-Goldszein –
- El IBM PC y PS/2 – Peter Norton- Richard Wilton
– - The Z-80 Microcomputer Handbook – William Barden Jr.
– - Revista K-64 Computación para todos Nº
18 - Bases de los microprocesadores y el 6800 – Ron Bishop
– - Algunos Archivos de
Internet - Apuntes Bibliográficos provistos por
compañero español.
Al Ingeniero Sr. Gonzalo Estivariz
Al Técnico Superior en Controles
Automáticos y Sistemas
Digitales Sr. Daniel Gamero
Liliana Beatriz Olivera Rivas
Licenciada en Sistemas
Programadora de Sistemas
Auxiliar Docente de Taller de Investigación (3er. año) de la
carrera de Licenciatura en Sistemas de
Facultad de Ciencias de la
Administración de Concordia, Entre
Ríos, Argentina
(UNER)
Auxiliar Docente de Metodología de la Investigación (3er. año) de la
carrera de Licenciatura en Sistemas de
Facultad de Ciencias de la
Administración de Concordia, Entre
Ríos, Argentina
(UNER)
e-mail:
ÍNDICE
ROM-EPROM
INTRODUCCIÓN: *
EL BIOS *
El Firmware de la PC *
El reemplazo del BIOS *
MEMORIAS EPROM *
Funcionamiento de una EPROM *
La familia
2700 *
PROGRAMADOR/ EMULADOR DE FLASH
EPROM *
Qué es una memoria EPROM
"Flash" *
Las Direcciones y los Datos *
Programando las memorias EPROM
"Flash" *
Uso Práctico del Programador/Emulador de EPROM
"Flash" *
Algunos Programas para el emulador /programador de
EPROM "Flash" *
Borradores de EPROMs *
AGRADECIMIENTOS: *
DATOS DE LA AUTORA: *