Micros 1

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 9

Microcontroladores.

Evolución, estado actual y tendencias

Ing. Marcelo E. Romeo 1

[email protected]

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

Figura 1. Arquitectura de un 8048.


Conjuntamente con la aparición de este microcontrolador, surgieron un conjunto de herramientas
como un excelente ensamblador, algunos depuradores, el primer lenguaje de alto nivel para este tipo de
dispositivos (el PLM 48) y emuladores en tiempo real que ayudaron a la popularidad de este producto para
pequeñas aplicaciones de control.

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

Figura 2. Esquema de una computadora con arquitectura Harvard


Este esquema (a diferencia de la arquitectura Von Neumann, típica en las PCs y microprocesadores
tradicionales), necesita de diferentes instrucciones para dirigirse a la memoria de datos y a la memoria de
programa.
También requiere de conexionados particulares, con distintas señales para acceder a cada una de las
memorias.

En 1981, apareció el sucesor de esta microcomputadora en un solo circuito. Fue el 8051 y


manteniendo el soporte para desarrollo de su predecesor, agregó importantes mejoras en el circuito, como
ser:

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.

En poco tiempo, el 8051, se constituyó en lo que se dio en llamar un estándar de la industria.


Fuentes externas
de interrupción

Control de
Interrupciones ROM R/W

CPU Buses Internos

Puertos Puertos Temporizadores


de I/O Serie

Figura 3. Esquema interno de un 8051


2 Evolución.

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.

2.1 Ampliación del hardware existente.

a) Se amplió la memoria de programa y/o datos.


b) Se aumentaron la cantidad de líneas de entrada/salida.
c) Posibilidad de programación sobre el circuito definitivo (sin necesidad de extraerlo).
d) Memoria de datos con respaldo (backup) hasta 10 años de batería incorporada dentro del circuito.

En este rubro, podemos presentar a los microcontroladores Dallas DS2250, DS5000, DS5000FP

2.2 Agregado de nuevo hardware.

Al núcleo básico, se incorporaron otros periféricos dentro del circuito, como por ejemplo:

a) Conversores analógico a digital y/o digital a analógico.


b) Reloj de tiempo real.
c) Segundo puerto de comunicaciones.
d) Segundo puntero a memoria (data pointer).
e) Tercer temporizador.
f) Circuito de protección (watchdog timer).
g) Circuito de modulación del ancho del pulso (PWM).

En este rubro, podemos presentar a los microcontroladores Dallas DS2250T (esta T indica que
contiene un reloj de tiempo real), DS2251T, DS2252T, DS5000T

3 Evolución de los microcontroladores Dallas.

3.1 Ampliación del hardware existente.

Estos microcontroladores de Dallas, presentan dos particularidades distintivas:


a) Disponen de una memoria de lectura y escritura (RAM) de 8 a 64 kbytes y que por medio de una pila
incorporada se comportan como una memoria no volátil2 . De esta manera y por programación, el
usuario puede dedicar una parte de esa memoria a ser considerada para almacenar el programa (como
si se tratara de una memoria ROM ó EPROM) y otra parte como memoria de datos. Por otro lado, el
programa puede cambiarse una y otra vez (sin límites y sin la tediosa operación de borrado), aún con
el microcontrolador instalado en el equipo definitivo.
b) Su arquitectura interna se basa en disponer de un microcontrolador DS5000FP, designado por Dallas
como soft microcontroller, al que se le agregan distintos recursos periféricos. Este microcontrolador
dispone de un programa interno de autocarga3 que permite modificar la memoria de programa por
medio de la línea serie desde una PC, transfiriendo un archivo generado por un compilador estándar
para 8051.
Esta facilidad, permite que, tomando los recaudos del caso, un programa pueda modificarse a sí
mismo, cosa impensable en una versión EPROM.
Este microcontrolador, además de poder direccionar 32 Kbytes de memoria particionable entre
memoria de programa y de datos, puede llegar a operar con otra memoria de 32 K, pero sólo
utilizable como memoria externa de datos.

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

Figura 4. Microcontrolador DS5000FP en encapsulado para montaje superficial


Como hecho distintivo, aparecerán un bus interno de datos de 8 bits y uno de direcciones de 15 bits,
llamado byte wide bus y que permite direccionar una memoria interna (tanto de programa como de datos) sin
sacrificar líneas de puertas (P0 y P2 más un demultiplexor 74HC373 externo), como sucedería en un 8051
tradicional.

Figura 5. Mapa de memoria de un microcontrolador de la familia DALLAS.


En la figura 5, se pone de manifiesto lo descripto en el párrafo anterior. En primer lugar, se observan
los registros como posiciones de memoria interna (según lo marca la arquitectura de la familia 8051). La
memoria de programa se iniciará en la dirección 0 de la primera memoria RAM conectada a este bus interno
y llegará hasta donde se haya programado la partición. La memoria de datos se iniciará donde termina la
memoria de programa y finalizará en la última posición existente en esta RAM, ya sea 8 Kbytes ó 32 kbytes,
dependiendo de los modelos.

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).

Figura 7. Distribución de patas de un DS5000.

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:

MCON EQU 0C6H


MOV MCON,#20H ;Particion De La Memoria 4k
Figura 8. Diagrama interno de un DS5000.

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.

Figura 9. Presentación del DS2250

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.

La primera de esas técnicas, consiste en encriptar el contenido de la memoria de programa,


empleando una llave interna y protegida, de manera que para quien lea la memoria de programa le resulte
totalmente ininteligible. Cualquier intento en leer esa clave interna, produce automáticamente su borrado y la
inhabilitación permanente del dispositivo.

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.

En la segunda parte de este artículo se tratarán: DS2250T, DS5000T, DS2251T,


80C310, 80C320/80C323, 87C520, 87C530, 87C550.
4 Resumen parcial

Respal Puertos RTC DPTRs watchd Encap- Timers


Microcon Memoria Funciones
do Serie og sulado
trolador Adicional Especiales
batería
DS5000FP - NO 1 NO 1 SÍ QFP 2 NO (1, 2, 3)
DS5000 8 ó 32 K SÍ 1 NO 1 SI DIP 2 NO (1, 2, 3)
DS2250 8, 32 ó 64 K SÍ 1 NO 1 SI SIMM 2 NO (1, 2, 3)
DS5001FP - NO 1 NO 1 SÍ QFP 2 NO (1, 2, 3)
DS5002FP - NO 1 NO 1 SÍ QFP 2 Encriptado y
seguridad (1, 2,
3)

Notas: 1) Ejecución de Programas Encriptados


2) Frecuencia máxima de cristal: 16 MHz.
3) Carga del programa por línea serie sobre el equipo definitivo.

También podría gustarte