Introducción y Arquitectura de microcontroladores

En esta sección encontraras toda la información necesaria para ayudarte a despejar tus dudas respectos a los microcontroladores, empezaremos con la definición de:

¿Que son los Microcontroladores?

fig0-20

Primero que todo comenzaremos definiendo que son los microcontroladores: Los microcontroladores ( abreviado μC, UC o MCU ) son circuitos integrados que son capaces de ejecutar ordenes que fueron grabadas en su memoria. Su composición esta dada por varios bloques funcionales, los cuales cumplen una tarea especifica, son dispositivos que operan uno o mas procesos, por lo general los microcontroladores están basados en la arquitectura de Harvard, la cual consiste en dispositivos de almacenamiento separados (memoria de programa y memoria de datos).
El termino microcontrolador esta dado por dos palabras que son “Micro”-“Controlador” las cuales tienen por significado “pequeño (en tamaño)” y “maniobrar o controlar (función principal)” procesos los cuales son definidos mediante la programación.
Un micro controlador esta constituido en su interior por las tres principales unidades funcionales de una computadora, las cuales son: unidad central de procesamiento, memoria y periféricos de entrada y salida.
En fin un microcontrolador es un sistema completo, con unas prestaciones limitadas que no pueden modificarse y que puede llevar a cabo las tareas para las que ha sido programado de forma autónoma.
En cuanto a la arquitectura de los microcontroladores la detallaremos con mayor profundidad a continuación…

Arquitectura de los microcontroladores

Arquitectura Von Neumann La arquitectura tradicional:

NeumannLa arquitectura tradicional de computadoras y microcontroladores se basa en el esquema propuesto por John Von Neumann, en el cual la unidad central de proceso, o CPU, esta conectada a una memoria única que contiene las instrucciones del programa y los datos. El tamaño de la unidad de datos o instrucciones esta fijado por el ancho del bus de la memoria. Las dos principales limitaciones de esta arquitectura tradicional son :

a) Que la longitud de las instrucciones esta limitada por la unidad de longitud de los datos, por lo tanto el microprocesador debe hacer varios accesos a memoria para buscar instrucciones complejas.

b) La velocidad de operación (o ancho de banda de operación) esta limitada por el efecto de cuello de botella que significa un bus único para datos e instrucciones que impide superponer ambos tiempos de acceso.

La arquitectura von Neumann permite el diseño de programas con código automodificable, práctica bastante usada en las antiguas computadoras que solo tenían acumulador y pocos modos de direccionamiento, pero innecesaria, en las computadoras modernas.

La arquitectura Harvard y sus ventajas:

HarvardLa arquitectura conocida como Harvard, consiste simplemente en un esquema en el que el CPU esta conectado a dos memorias por intermedio de dos buses separados. Una de las memorias contiene solamente las instrucciones del programa, y es llamada Memoria de Programa. La otra memoria solo almacena los datos y es llamada Memoria de Datos. Ambos buses son totalmente independientes y pueden ser de distintos anchos. Para un procesador de Set de Instrucciones Reducido, o RISC (Reduced Instrucción Set Computer), el set de instrucciones y el bus de la memoria de programa pueden diseñarse de manera tal que todas las instrucciones tengan una sola posición de memoria de programa de longitud. Además, como los buses son independientes, el CPU puede estar accediendo a los datos para completar la ejecución de una instrucción, y al mismo tiempo estar leyendo la próxima instrucción a ejecutar. Podemos observar claramente que las principales ventajas de esta arquitectura son:

a) El tamaño de las instrucciones no esta relacionado con el de los datos, y por lo tanto puede ser optimizado para que cualquier instrucción ocupe una sola posición de memoria de programa, logrando así mayor velocidad y menor longitud de programa.

b) El tiempo de acceso a las instrucciones puede superponerse con el de los datos, logrando una mayor velocidad de operación.

Una pequeña desventaja de los procesadores con arquitectura Harvard, es que deben poseer instrucciones especiales para acceder a tablas de valores constantes que pueda ser necesario incluir en los programas, ya que estas tablas se encontraran físicamente en la memoria de programa (por ejemplo en la EPROM de un microprocesador).

Arquitectura interna de un microcontrolador.

sje

CPU (unidad central de proceso):

Podemos decir que la CPU, siglas en inglés de unidad central de proceso, es el núcleo del microcontrolador. Se encarga de ejecutar las instrucciones almacenadas en la memoria, de la que hablaremos más adelante. Es lo que habitualmente llamamos procesador o microprocesador, término que a menudo se confunde con el de microcontrolador. En esta línea cabe aclarar que, tal y como estamos viendo, ambos términos no son lo mismo: el microprocesador es una parte de un microcontrolador y sin él no sería útil; un microcontrolador, en cambio, es un sistema completo que puede llevar a cabo de forma autónoma una labor.

Memoria:

Entendemos por memoria los diferentes componentes del microcontrolador que se emplean para almacenar información durante un periodo determinado de tiempo. La información que necesitaremos durante la ejecución del programa será, por un lado, el propio código, y por otro, los diferentes datos que usemos durante la ejecución del mismo. Hablaremos por tanto de memoria de programa y de memoria de datos, respectivamente.

La diferente naturaleza de la información que hay que almacenar hace necesario el uso de diferentes tipos memorias. Sin hacer especial énfasis en este apartado, sí habrá que tener en cuenta una clasificación básica, que distingue entre memoria volátil y no volátil. La primera es aquella que pierde la información que almacena al desconectarla de la alimentación; la segunda, como resulta obvio, no. Por lo tanto, se hace evidente que al menos la memoria de programa deberá ser no volátil: no sería práctico que el programa grabado en el microcontrolador se borrara cada vez que apagáramos el dispositivo. Con respecto a la memoria de datos, diremos por el momento según la situación puede interesarnos una u otra.

Unidades de entrada/salida:

Las unidades de entrada/salida son los sistemas que emplea el microcontrolador para comunicarse con el exterior. Imaginemos una televisión: por un lado tiene un dispositivo de salida, como es la pantalla, y por otro lado, de entrada, como son los botones de subir o bajar volumen y de cambio de canal. Así, los dispositivos de entrada nos permitirán introducir información en el microcontrolador y los de salida nos servirán para que éste la saque al exterior.

 

Arquitectura RISC y CISC

RISC

RISC (Reduced Instruction Set Computer) – Computadora con Juego de Instrucciones Reducidas.

En este caso la idea es que el microcontrolador reconoce y ejecuta sólo operaciones básicas (sumar, restar, copiar etc…) Las operaciones más complicadas se realizan al combinar éstas (por ejemplo, multiplicación se lleva a cabo al realizar adición sucesiva). Es como intentar explicarle a alguien con pocas palabras cómo llegar al aeropuerto en una nueva ciudad. Sin embargo, no todo es tan oscuro. Además, el microcontrolador es muy rápido así que no es posible ver todas las “acrobacias” aritméticas que realiza. El usuario sólo puede ver el resultado final de todas las operaciones. Por último, no es tan difícil explicar dónde está el aeropuerto si se utilizan las palabras adecuadas tales como: a la derecha, a la izquierda, el kilómetro etc.

 

CISC (Complex Instruction Set Computer) – Computadoras con un juego de instrucciones complejo.

¡CISC es opuesto a RISC! Los microcontroladores diseñados para reconocer más de 200 instrucciones diferentes realmente pueden realizar muchas cosas a alta velocidad. No obstante, uno debe saber cómo utilizar todas las posibilidades que ofrece un lenguaje tan rico, lo que no es siempre tan fácil.

Anuncios

4 pensamientos sobre “Introducción y Arquitectura de microcontroladores”

  1. Buen articulo.

    saludos.

  2. jorge molina dijo:

    muy completo y sin palabrería que a veces no viene al caso…

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

Conectando a %s