tipo de memoria

6
INSTITUTO POLITECNICO NACIONAL ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA INGENIERÍA EN CONTROL Y AUTOMATIZACIÓN INTERFASES Y MICROCONTROLADORES VELÁZQUEZ SÁNCHEZ ALEJANDRO TONATIU 7AV3 NÁJERA SÁNCHEZ ABNER FAUSTINO 2011300714

Upload: abnernajera

Post on 26-Oct-2015

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Tipo de Memoria

INSTITUTO POLITECNICO NACIONAL

ESCUELA SUPERIOR DE INGENIERIA MECANICA Y ELECTRICA

INGENIERÍA EN CONTROL Y AUTOMATIZACIÓN

INTERFASES Y MICROCONTROLADORES

VELÁZQUEZ SÁNCHEZ ALEJANDRO TONATIU

7AV3

NÁJERA SÁNCHEZ ABNER FAUSTINO 2011300714

Tipo de memoria de programaEn los microcontroladores la memoria de instrucciones y datos esta integrada en el propio chip. Una parte debe ser no volátil, de tipo ROM, que

Page 2: Tipo de Memoria

se destina a contener el programa de instrucciones que gobierna la aplicación.

Otra parte de memoria debe ser volátil, de tipo RAM, y se destina a guardar las variables y los datos.

Existen principalmente cinco versiones de memoria no volátil que se pueden encontrar en los microcontroladores del mercado:

Memoria ROM con mascara. Memoria OTP o PROM. Memoria EPROM. Memoria EEPROM. Memoria FLASH.

La memoria ROM con mascara es no volátil y de solo lectura, cuyo contenido se graba durante la fabricación del chip. El elevado costo del diseño de la mascara solo hace aconsejable el empleo de los microcontroladores con este tipo de memoria cuando se precisan cantidades superiores a varios miles de unidades.

La memoria OTP (One Time Programmable) o PROM (Programmable Read Only Memory) es no volátil, de solo lectura y programable una sola vez por el usuario. La grabación se realiza mediante un sencillo programador o quemador controlado por un programa desde la PC.

La versión de OTP es recomendable cuando es muy corto el ciclo de diseño del producto, o bien, en la construcción de prototipo o serie muy pequeñas.

Los microcontroladores que disponen de memoria EPROM (Erasable Programmable Read Only Memory) pueden borrarse y grabarse muchas veces. La grabación se realiza como en el caso de la memoria OTP. Si posteriormente se desea borrar el contenido, disponen de una ventana de cristal en su superficie por la que se somete a la EPROM a rayos ultravioleta durante varios minutos.

La memoria EEPROM (Electrical EPROM) es de solo lectura, programable y borrable eléctricamente. Tanto la programación como el borrado se realizan eléctricamente desde el propio grabador y bajo el control programado de un PC, y pueden hacerse con el microcontrolador instalado en el circuito. Es muy comoda y rápida la operación de grabado, asi como la de borrado.

La memoria FLASH es no volátil, de bajo consumo y puede grabarse y borrarse eléctricamente. Funaciona como una ROM y una RAM pero consume menos energía y es mas pequeña. La memoria FLASH también puede programarse “en circuito” y además, es mas rápida, tiene mayor densidad y tolera mas ciclos de escritura/borrado que la EEPROM.

Page 3: Tipo de Memoria

Principios Básicos de Operación Interna

El microcontrolador ejecuta las instrucciones que se encuentran almacenadas en la memoria de programa. Este proceso se genera de manera síncrona con base en un reloj un oscilador (OSC), que paso a paso va siguiendo una maquina de estados finita encargada de buscar la instrucción en memoria, interpretarla y ejecutar las tareas asociadas a la instrucción en particular.

De esta forma, el OSC se convierte en la referencia de tiempo de ejecución del microcontrolador. Si el OSC tiene una mayor frecuencia , entonces ejecutara instrucciones a mayor velocidad, teniendo como limite la máxima velocidad de operación del microcontrolador .

Al ser una maquina de estados finita, es necesario que parta de un estado conocido. Lo anterior se logra con el proceso de inicialización de encendido (Power On Reset). En el proceso de inicialización, el contador de programa (PC) se encarga con un valor inicial. Este PC se encargara de estar apuntando a la siguiente instrucción a ejecutar.

Con base en la máquina de estados, el PC se convertirá en la dirección de memoria de programa que contiene la siguiente instrucción a ejecutar; la unidad de control se encargara de leer la instrucción y de actualizar el PC para que apunte a la siguiente instrucción.

Se presentan otras circunstancias en las que es necesario que el PC vuelva a la posición inicial, por lo que se ofrece la opción de que una señal de entrada externa al microcontroador, la señal de RESET, pueda utilizarse con dicho comportamiento.

Unidad Central de Procesamiento (CPU)

La unidad central de procesamiento es el modulo “inteligente” del microcontrolador. La CPU sigue la secuencia de instrucciones, o programa, que se encuentra almacenada en la memoria de código (FLASH).

El diseñador del programa define la secuencia de instrucciones que resolver la aplicación. Este programa se interpreta en código maquina (binario) aunque el diseñador lo escribe en un lenguaje un poco mas cercano al ser humano, conocido como lenguaje de ensamblador. Este lenguaje ensamblador es un punto intermedio entre el lenguaje maquina y lenguajes de mayor nivel, como, por ejemplo, lenguaje C.

Page 4: Tipo de Memoria

En tiempos modernos la programación se hace principalmente en lenguaje C. Se dice que es un lenguaje de mayor nivel por estar mas cercano al lenguaje humano y mas alejado del lenguaje maquina. Implica un mayor nivel de abstracción y mayor simplicidad en la programación.

La unidad central de procesamiento (CPU) esta conformada por la unidad de control, los registros del procesador y la unidad de control.

La unidad aritmético lógica (ALU) es la encargada de realizar las operaciones, es el modulo que ejecuta los cálculos que colaboran, paso a paso, en la ejecución de las operaciones que el diseñador define para resolver la aplicación.

La ALU se auxilia de registros internos, que son localidades de memoria de alta velocidad, construidos con Flip Flops. Algunos de estos registros se usan en lenguaje ensamblador para poder ejecutar las operaciones. En lenguaje C, el diseñador no opera con estos registros, le son transparentes.

La secuencia de acciones necesarias desde la interpretación hasta la ejecución de las instrucciones es controlada por la unidad de control. Esta unidad se construye con base en decodificadores y maquinas de estado finitas (FSM) que llevan paso a paso el control de todos los modulos. La unidad de control gobierna la operación de todos los modulos, indicando cuando debe ejecutar y que tipo de acción debe realizar.

La unidad de control inicia su operación como respuesta a la señal de inicialización (RESET); a partir de ese momento, seguirá la secuencia de acciones dependiendo de cada instrucción y cumpliendo la secuencia almacenada en la memoria de programa. La maquina de estado se sincroniza con base en una señal de reloj (CLK) que puede estar definida por una señal externa o una señal interna.

Memoria interna

El microcontrolador sigue la estrategia del programa almacenado en memoria ; por lo anterior, requiere memoria de programa, memoria de datos y registros internos, explicados anteriormente.

Memoria de programa

Es la encargada de mantener la secuencia de instrucciones a ejecutar; normalmente es memoria no volátil, es decir, que aunque se retire la energía, puede mantener las instrucciones durante años. Dicha memoria se borra, programa o configura con descargas eléctricas, por lo que puede ser programada sin necesidad de removerse de la tarjeta de circuito impreso; lo anterior se denomina In Circuit Programming.

El ambiente de desarrollo integral (IDE) en el computador o la computadora permitirá, entre otras cosas, poder grabar la memoria de programa en el dispositivo electrónico.

Page 5: Tipo de Memoria

Memoria de datos

La memoria de datos, conocida como RAM, es la unidad de almacenamiento temporal; es volátil, por lo que al retirer la energía se perderan los datos. Como respuesta a un Reset, las celdas de memoria quedaran con valores desconocidos, por lo que no se puede presuponer ningún valor.

Puertos de entrada/salida

Los puertos de entrada/salida son los medios con los cuales el microcontrolador tiene la capacidad de realizar interfaces con el entorno. Via los puertos de entrada se pueden conectar desde dispositivos muy simple como switches y teclados.

Basicos (GPIO) Estandar (Special Funct)

Bibliografía

LIBRO:

Microcontroladores Motorola Freescale Ed. Alfaomega pag. 12, 13, 23, 24 Y 25