Micros 1
Micros 1
Micros 1
1 Reseña Histórica.
En 1978 apareció la primera microcomputadora en un solo circuito (que posteriormente se llamaría
microcontrolador) de uso comercial importante. El 8048. El hecho llamativo de ese momento, fue que por
primera vez se incorporó en un solo encapsulado:
a) Una Unidad Central de Proceso (CPU) de menores prestaciones de las que empleaban los
microprocesadores de aquella época (8085 y 6800), orientada al manejo de bits, con una entrada de
interrupción externa.
b) Una memoria de almacenamiento de programa de 1 kbyte de ROM o EPROM según las versiones.
c) Una pequeña memoria de datos de 64 bytes.
d) Un temporizador de 8 bits.
Interrupción
ROM R/W
CPU
Buses Internos
Puertos Temporizador
de E/S
También dejó establecida una característica que acompañó a todos sus sucesores, que fue la
arquitectura Harvard de microcomputadoras. En este tipo de computadoras, existen dos bancos de
memoria perfectamente diferenciados. El banco de memoria de programa y el banco de memoria de datos.
Las computadoras que responden a esta arquitectura, tienen distintas formas de conexión con la unidad
central de proceso, y (normalmente) distintas instrucciones para dirigirse a uno u otro banco de memoria. De
esta manera pueden coexistir dos posiciones de memoria con igual dirección, pero una posición de memoria
en el mapa de programa y la otra en el mapa de datos. Todo ocurre como si se tuviera una línea más en el bus
de direcciones.
1
Profesor Titular con Dedicación Exclusiva (Técnicas Digitales I, II y III). Universidad Tecnológica Nacional -
Facultad Regional Buenos Aires.
DIREC. DIREC.
0000 0000
0001 MEMORIA MEMORIA 0001
0002 0002
DE DE
. BUSES CPU BUSES .
.
PROGRAMA DATOS .
nnnn mmmm
a) Dos temporizadores programables de 16 bits (en lugar de uno sólo como en el 8048), con la posibilidad
de generar interrupciones entrelazadas.
b) Una comunicación serie full duplex bidireccional con velocidad programable. Además esta
comunicación serie, permite realizar sistemas en anillo, pudiendo programar con cuales
microcontroladores intercambiar información, generando interrupciones sólo a ellos, permitiendo operar
normalmente a aquellos microcontroladores a quienes no va dirigido el mensaje.
c) 128 (ó 256, según la versión) bytes de memoria de datos.
d) 4 K (u 8 K, según la versión) bytes de memoria ROM (ó EPROM, según el caso).
e) Dos entradas de interrupción externa.
f) Mayor cantidad de línea de entrada/salida.
g) Repertorio de instrucciones mucho más poderoso.
Control de
Interrupciones ROM R/W
Con el paso del tiempo, se aprovechó el núcleo ya aceptado del 8051, todo el código escrito sobre el
mismo y se evolucionó en dos sentidos distintos, manteniendo la compatibilidad con la base.
En este rubro, podemos presentar a los microcontroladores Dallas DS2250, DS5000, DS5000FP
Al núcleo básico, se incorporaron otros periféricos dentro del circuito, como por ejemplo:
En este rubro, podemos presentar a los microcontroladores Dallas DS2250T (esta T indica que
contiene un reloj de tiempo real), DS2251T, DS2252T, DS5000T
2
es decir que al quitarse la alimentación externa, la información se mantiene por el respaldo que le da la pila
3
Serial bootstrap loader
3.1.1 DS5000FP
También se puede ver la existencia de una eventual segunda memoria de datos conectada a lo que se
ha dado en llamar bus de expansión, que completa los 64 kbytes de memoria interna.
Figura 6. Arquitectura interna del DS5000. En la parte superior derecha esta presentado el byte wide bus.
En la parte superior derecha de la Fig. 6, podemos ver este byte wide bus dentro del DS5000FP.
Aparecen dos señales de selección. Una se empleará para habilitar una memoria de 8 ó 32 kbytes
fragmentables (/CE1) entre programa y datos y otra señal de selección (/CE2), que será utilizada en algunos
modelos de la familia para una segunda memoria exclusiva de datos.
Otro detalle novedoso, es el circuito de monitoreo de la alimentación que permite conmutar en forma
automática la alimentación de las memorias desde Vcc a una batería de litio provista por el usuario.
3.1.2 DS5000
Este microcontrolador en tecnología CMOS, incorpora un DS5000FP.conjuntamente con una
memoria RAM de 8 ó 32 Kbytes en un formato de doble hilera de patas ó DIP (dual in line package).
Aquí conviene hacer referencia a la nomenclatura. A la sigla básica DS5000 se le posponen dos
números. El primero de ellos corresponde al tamaño en kbytes de la RAM y el segundo número a la
frecuencia máxima del cristal con que puede operar. Así un DS5000-8-16, es un DS5000 con 8 kbytes de
memoria y 16 MHz de frecuencia máxima de cristal.
El DS5000, mantendrá la información en la memoria no volátil (ya sean programas como datos) por
lo menos por 10 años desde su primera programación.
Respecto de la programación, la misma puede hacerse por medio del tradicional método de
programación paralelo del 87C51, por el que se programa un byte y se verifica que el valor almacenado sea
el deseado. Este proceso es mucho más rápido que la programación de cualquier EPROM, aún empleando
los algoritmos de programación inteligente, pues es la escritura de una RAM frente a pulsos de 50 a 100
microsegundos. El segundo método es el de la programación sobre el circuito, por el que colocando las
entradas de Reset a “1” y la salida /PSEN a “0”, se enviará por la línea serie el programa a cargar. Esta
operación permite que el microcontrolador se programe sobre el circuito definitivo, permitiendo cargar la
última versión de firmware prácticamente en la casa del cliente.
En cualquiera de ambos métodos, posteriormente se puede habilitar una función de seguridad que
impide que por cualquier método se pueda llegar a leer el contenido de la memoria.
Si bien el DS5000 tiene registros de funciones especiales propios (SFRs), como MCON y PCON,
los mismos se pueden definir como igualdades (EQUs) en cualquier ensamblador para 8051 y después
emplearlos como registros. A continuación se presenta un ejemplo para el registro de particiones MCON:
En la Figura 8, vemos el diagrama interno del DS5000. Allí se pone de manifiesto la disponibilidad
para el usuario de las cuatro puertas del microcontrolador y del manejo interno que se hace en este caso de la
memoria de 32 Kbytes.
3.1.3 DS2250.
Este microcontrolador es totalmente similar en sus funciones y características al DS5000, salvo que
está montado sobre una pequeña plaqueta de impreso en formato SIMM (del mismo tipo que las memorias
dinámicas de una PC) y que, incluyendo el zócalo de montaje, es de menor precio que el DS5000 en su
formato DIP.
3.1.4 DS5001FP
Este microcontrolador es similar al DS5000FP, salvo que permite direccionar hasta 128 Kbytes de
memoria no volátil pudiendo hacer una verificación de CRC (Cyclic Redundancy Check) para detectar y
corregir errores en la memoria no volátil.
Puede generar hasta 4 habilitaciones de memorias (pensadas para seleccionar cuatro memorias de 32
k bytes cada una) y hasta 4 periféricos (por ejemplo un circuito de reloj de tiempo real).
3.1.5 DS5002FP
Esta versión mejorada del DS5001FP, también viene preparada para montaje superficial de 80 patas
y será el núcleo de otro conjunto de microcontroladores. Se diferencia de sus predecesores en que incorpora
una serie de sofisticadas técnicas que impiden obtener y duplicar su contenido.
Opcionalmente, el circuito integrado se puede hallar mecánicamente protegido por una membrana que
impide la lectura de la memoria por medio de micropuntas de prueba.