Você está na página 1de 8

2.

Arquitectura de microcontroladores
La arquitectura de un microcontrolador permite definir la estructura de su
funcionamiento, las dos arquitecturas principales usadas en la fabricación de
microcontroladores son: arquitectura de Von Neumann
y arquitectura Harvard. Además, estas arquitecturas pueden tener
procesadores de tipo CISC o de tipo RISC.

Arquitectura de Von Neumann

fig 1.4 Arquitectura de Von Neumann


En esta arquitectura, los datos y las instrucciones circulan por el mismo bus
ya que estos son guardados en la misma memoria, su principal ventaja es el
ahorro de líneas de entrada-salida pero esto supone una disminución en la
velocidad con la que se realizan los procesos.

Este tipo de arquitectura es hoy en día muy común en los computadores


personales, y fué muy común en la construcción de microcontroladores hasta
que se descubrieron las grandes ventajas de la arquitectura Harvard.

Arquitectura Harvard

fig 1.5 Arquitectura Harvard


A diferencia de la anterior, en la arquitectura Harvard existe una memoria
específica para datos y una memoria específica para las instrucciones, de
esta forma se usan dos buses bien diferenciados. Con esto se logra trabajar
con las dos memorias simultáneamente y en consecuencia se obtiene mucha
más velocidad en la ejecución de los programas.

Actualmente, la tendencia de los microcontroladores es usar este tipo de


arquitectura.

Procesador de tipo CISC (Complex Instruction Set Computer)

Un procesador que permita manejar un amplio juego de instrucciones es


llamada de tipo CISCque en español significa “Ordenador con Juego de
Instrucciones Complejo”, programar en este tipo de arquitectura requiere en
algunos casos del dominio de hasta centenares de instrucciones.

Procesador de tipo RISC (Reduced Instruction Set Computer)

Cuando un procesador está diseñado para manejar pocas instrucciones pero


sin afectar las prestaciones del ordenador es llamada de tipo RISC que en
español significa “Ordenador con Juego de Instrucciones Reducido”, esto
permite programar con mucha más facilidad y, por si fuera poco, los circuitos
de tipo RISC disponen de una estructura que busca como mínimo la
instrucción próxima a ejecutar mientras realiza la instrucción actual. Esta
estructura permite lograr no solo mayor velocidad de proceso sino también
procesar cada instrucción con la misma velocidad.

NOTA: Microchip introdujo la arquitectura Harvard con procesador


tipo RISC en sus microcontroladores cuando el mercado era dominado por
microcontroladores con arquitectura de Von Neumann, desde entonces las
ventajas que ofreció esta nueva tecnología permitieron a Microchip sobresalir
como uno de los más grandes fabricantes de microcontroladores en el
mundo.
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?

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:

La 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:

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

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

Você também pode gostar