Está en la página 1de 11

Universidad Autónoma de Nuevo León

Facultad de Ingeniería Mecánica y Eléctrica

Microcontroladores
Tarea #4:
Diferencias entre microprocesador y
microcontrolador

Nombre: Matrícula: Carrera:

Cristian Manuel Monreal Guzmán 1794853 IMTC

Instructor: Alejandro Torres Ramírez


Hora clase: Martes N4
Ciclo Escolar: Enero-Junio 2022

C.d Universitaria, San Nicolás de los Garza, Nuevo León.


21/02/2021
a) ¿Qué es un Microprocesador?
el término “microprocesador”, remite al dispositivo principal dentro de las
computadoras digitales, es decir, al elemento encargado de realizar los cálculos que
permiten desde escribir una carta hasta editar una fotografía; desde administrar una
nómina hasta platicar en tiempo real con alguna persona al otro lado del mundo;
desde disfrutar una película hasta controlar complejos
procesos industriales; en fin, el concepto de
“microprocesador” evoca un dispositivo de enorme poder de
cálculo, relativamente costoso, que consume mucha potencia
y que, por tanto, sólo está al alcance de pocas personas.

En un hogar típico, existen una enorme cantidad de microprocesadores, realizando


diversas tareas que buscan facilitar la vida diaria de los usuarios. Se encuentran en
el televisor, en el equipo de sonido, en el reproductor de DVD, en los teléfonos
celulares, etc.

Elementos básicos de un Microprocesador

• Capacidad de manejar formas de una serie de datos binarios


Lo que hace tan especiales a los microprocesadores es precisamente su capacidad
de manejar en diversas formas una serie de datos binarios, realizando una gran
cantidad de operaciones lógicas basadas en un programa preestablecido, y
buscando con ello obtener un resultado final satisfactorio para el usuario.

• Estructura interna
Su estructura interna, está diseñada para proporcionar al dispositivo una flexibilidad
que no tienen otro tipo de componentes, la cual permite aplicar exactamente el
mismo microprocesador en una computadora pequeña, en una consola de
videojuegos, en el control de un automóvil, en el panel de un proceso industrial, etc.
se observa el diagrama interno típico de
un microprocesador; en el extremo
derecho se ubica una etapa identificada
como ALU, siglas de Aritmetic-Logic
Unit o Unidad Aritmética-Lógica, este es
el bloque en donde se llevan a cabo las
operaciones dentro del
microprocesador, y es el que determina
la potencia de cálculo de este
dispositivo. La ALU está conectada al resto del dispositivo por medio de un bus de
comunicación interno, que lleva y trae señales de los otros bloques desde y hacia a
la ALU.
También existe un bus de control, que sirve para expedir o introducir instrucciones
al microprocesador, dependiendo de la operación que se vaya a realizar; por
ejemplo, aquí se encuentran las líneas que determinan si un dato se va a leer o a
grabar en la memoria RAM, también se ubican las líneas de interrupción para
detener un programa que haya entrado en un ciclo interminable, etc.

Familias de Microprocesadores
En la actualidad, las principales familias de microprocesadores son:
• Microprocesadores tipo x86 y derivados, se utilizan en prácticamente todas las
computadoras personales.
• Microprocesadores tipo ARM, se usan ampliamente en teléfonos celulares
inteligentes, computadoras tipo tablilla, sistemas de control complejos, etc.
• Microprocesadores tipo PowerPC, se emplean principalmente en consolas de
videojuegos, pero también en sistemas de control.
• Microprocesadores tipo 68xxx, usados por varias computadoras tradicionales,
aunque recientemente están en desuso.
• Microprocesadores tipo SPARC, exclusivos de las computadoras empresariales
SUN, muy usados en aplicaciones de redes realmente grandes.
• Microprocesadores tipo MIPS, para aplicaciones gráficas y de computación
realmente grandes, aunque últimamente su desarrollo se ha reducido.
• Arquitectura i960, exclusiva de Intel, se usa principalmente en grandes sistemas
de cómputo y en sistemas de control.

b) ¿Qué es un microcontrolador?

Un microcontrolador es un dispositivo electrónico capaz de


llevar a cabo procesos lógicos. Estos procesos o acciones
son programados en lenguaje ensamblador por el usuario, y
son introducidos en este a través de un programador.

Elementos básicos de un microcontrolador

La estructura típica de un microcontrolador dispone de los siguientes elementos:

• La CPU ejecuta y busca las instrucciones depositadas en memoria ROM. Recibe


las señales de reloj y sincronización necesarias de la unidad de reloj y las
peticiones de interrupción.
• La unidad de reloj o de oscilación genera la señal cuadrada de reloj a partir de
un cristal de cuarzo externo.

• El controlador de interrupciones puede aparecer como bloque diferencial o


integrado en la propia CPU, es responsable de transmitir las peticiones internas
o externas de interrupción hacia la CPU.

• Memoria ROM, que almacena el programa y datos constantes.

• Memoria RAM, que almacena variables modificables del programa.

• Periféricos como timers o contadores, puerto serie, puerto paralelo, etc.

C) Tipos de Arquitecturas

Arquitectura Von Neumann


La arquitectura tradicional de computadoras y microprocesadores está basada en
la arquitectura Von Neumann, en la cual la unidad central de proceso (CPU), está
conectada a una memoria única donde se guardan las instrucciones del programa
y los datos. El tamaño de la unidad de datos o instrucciones está fijado por el ancho
del bus que comunica la memoria con la CPU. Así un microprocesador de 8 bits con
un bus de 8 bits, tendrá que manejar datos e instrucciones de una o más unidades
de 8 bits (bytes) de longitud. Si tiene que acceder a una instrucción o dato de más
de un byte de longitud, tendrá que realizar más de un acceso a la memoria. Y el
tener un único bus hace que el microprocesador sea más lento en su respuesta, ya
que no puede buscar en memoria una nueva instrucción mientras no finalicen las
transferencias de datos de la instrucción anterior. Resumiendo todo lo anterior, las
principales limitaciones que nos encontramos con la arquitectura Von Neumann
son:
1. La limitación de la longitud de las instrucciones por el bus de datos, que hace que
el microprocesador tenga que realizar varios accesos a memoria para buscar
instrucciones complejas.

2. La limitación de la velocidad de operación a causa del bus único para datos e


instrucciones que no deja acceder simultáneamente a unos y otras, lo cual impide
superponer ambos tiempos de acceso.

Arquitectura Harvard

La arquitectura Harvard tiene la unidad central de proceso (CPU) conectada a dos


memorias (una con las instrucciones y otra con los datos) por medio de dos buses
diferentes. Una de las memorias contiene solamente las instrucciones del programa
(Memoria de Programa), y la otra sólo almacena datos (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 memoria de programa pueden
diseñarse de tal manera que todas las instrucciones tengan una sola posición de
memoria de programa de longitud. Además, al ser los buses independientes, la CPU
puede acceder a los datos para completar la ejecución de una instrucción, y al
mismo tiempo leer la siguiente instrucción a ejecutar. Ventajas de esta arquitectura:

1. El tamaño de las instrucciones no está 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.
2. El tiempo de acceso a las instrucciones puede superponerse con el de los datos,
logrando una mayor velocidad en cada operación.
El microcontrolador PIC 16F84 posee arquitectura Harvard, con una memoria de
datos de 8 bits, y una memoria de programa de 14 bits.

D) Tipos de modos de Direccionamiento

Direccionamiento de la memoria de datos (RAM)


La memoria interna se direcciona en forma directa por medio de los 5 bits “f”
contenidos en las instrucciones que operan sobre registros. De esta manera se
puede direccionar cualquier posición desde la 00 a la 1F. Como se vió en el capítulo
correspondiente a los mapas de memoria, las direcciones 10 a 1F corresponden a
los bancos de registros, por lo tanto, en los microcontroladores que tengan más de
un banco, antes de acceder a alguna variable que se encuentre en esta zona, el
programador deberá asegurarse de haber programado los bits de selección de
banco en el registro FSR. Los registros especiales y de uso general de la posición
00 a la 0f están presentes en todos los PIC16C5X, al igual que el banco 0 de
registros. Los bancos 1, 2 y 3 de registros están presentes solo en el 16C57.

Direccionamiento de la memoria de programa (EPROM, OTP)


La instrucción GOTO dispone solo de 9 bits en el código de operación para
especificar la dirección de destino del salto. Al ejecutar una instrucción GOTO el
microprocesador toma los dos bits que restan para completar la dirección de 11 bits,
de los bits 5 y 6 de la palabra de estado. Estos últimos son llamados bits de
selección de página (PA0 y PA1). El programador deberá asegurarse de que estos
dos bits tengan el valor correcto antes de toda instrucción GOTO.
Direccionamiento directo con instrucción CALL
Las instrucciones que operan sobre el PC como registro y alteran su contenido
provocando un salto, responden a un mecanismo muy similar al de las instrucciones
CALL para la formación de la dirección de destino. En este caso los bits 0 a 7 son
el resultado de la instrucción, el bit 8 es 0 y los bits restantes se toman de PA0 y
PA1. Este mecanismo se llama paginado, y a pesar de que representa una
complicación bastante molesta para el programador, resulta muy útil ya que permite
ampliar la capacidad de direccionamiento de memoria de programa para las
instrucciones de salto.

E) Tipos de programación

El microcontrolador ejecuta el programa cargado en la memoria Flash. Esto se


denomina el código ejecutable y está compuesto por una serie de ceros y unos,
aparentemente sin significado. Dependiendo de la arquitectura del
microcontrolador, el código binario está compuesto por palabras de 12, 14 o 16 bits
de anchura. Cada palabra se interpreta por la CPU como una instrucción a ser
ejecutada durante el funcionamiento del microcontrolador. Todas las instrucciones
que el microcontrolador puede reconocer y ejecutar se les denominan
colectivamente Conjunto de instrucciones. Como es más fácil trabajar con el
sistema de numeración hexadecimal, el código ejecutable se representa con
frecuencia como una serie de los números hexadecimales denominada código Hex.
En los microcontroladores PIC con las palabras de programa de 14 bits de anchura,
el conjunto de instrucciones tiene 35 instrucciones diferentes.

Lenguaje Ensamblador

Como el proceso de escribir un código ejecutable era considerablemente arduo, en


consecuencia fue creado el primer lenguaje de programación denominado
ensamblador (ASM). Siguiendo la sintaxis básica del ensamblador, era más fácil
escribir y comprender el código. Las instrucciones en ensamblador consisten en las
abreviaturas con significado y a cada instrucción corresponde una localidad de
memoria. Un programa denominado ensamblador compila (traduce) las
instrucciones del lenguaje ensamblador a código máquina (código binario).

Lenguajes de programación de alto nivel


Los lenguajes de programación de alto nivel (Basic, Pascal, C etc.) fueron creados
con el propósito de superar las desventajas del ensamblador. En lenguajes de
programación de alto nivel varias instrucciones en ensamblador se sustituyen por
una sentencia. El programador ya no tiene que conocer el conjunto de instrucciones
o características del hardware del microcontrolador utilizado. Ya no es posible
conocer exactamente cómo se ejecuta cada sentencia, de todas formas ya no
importa. Aunque siempre se puede insertar en el programa una secuencia escrita
en ensamblador.

Lenguaje C
El lenguaje C dispone de todas las ventajas de un lenguaje de programación de alto
nivel (anteriormente descritas) y le permite realizar algunas operaciones tanto sobre
los bytes como sobre los bits (operaciones lógicas, desplazamiento etc.). Las
características de C pueden ser muy útiles al programar los microcontroladores.
Además, C está estandarizado (el estándar ANSI), es muy portable, así que el
mismo código se puede utilizar muchas veces en diferentes proyectos. Lo que lo
hace accesible para cualquiera que conozca este lenguaje sin reparar en el
propósito de uso del microcontrolador. C es un lenguaje compilado, lo que significa
que los archivos fuentes que contienen el código C se traducen a lenguaje máquina
por el compilador. Todas estas características hicieron al C uno de los lenguajes de
programación más populares.
F) Diferencias entre un microcontrolador y una tarjeta de desarrollo

Si has tenido la oportunidad de realizar un diseño con un microprocesador pudiste


observar que dependiendo del circuito se requerían algunos circuitos integrados
adicionales además del microprocesador como, por ejemplo: memorias RAM para
almacenar los datos temporalmente y memorias ROM para almacenar el programa
que se encargaría del proceso del equipo, un circuito integrado para los puertos de
entrada y salida y finalmente un decodificador de direcciones.

Un microcontrolador es un solo circuito integrado que contiene todos los elementos


electrónicos que se utilizaban para hacer funcionar un sistema basado con un
microprocesador; es decir contiene en un solo integrado la Unidad de Proceso, la
memoria RAM, memoria ROM , puertos de entrada, salidas y otros periféricos, con
la consiguiente reducción de espacio.

El microcontrolador es en definitiva un circuito integrado que incluye todos los


componentes de un computador. Debido a su reducido tamaño es posible montar
el controlador en el propio dispositivo al que gobierna. En este caso el controlador
recibe el nombre de controlador empotrado o embebido (embedded controller).

Ventajas de un microcontrolador frente a un microprocesador


Estas ventajas son reconocidas inmediatamente para aquellas personas que han
trabajado con los microprocesadores y después pasaron a trabajar con los
microcontroladores. Estas son las diferencias más importantes: Por ejemplo la
configuración mínima básica de un microprocesador estaba constituida por un Micro
de 40 Pines, Una memoria RAM de 28 Pines, una memoria ROM de 28 Pines y un
decodificador de direcciones de 18 pines; pero un microcontrolador incluye todo
estos elementos en un solo Circuito Integrado por lo que implica una gran ventaja
en varios factores: En el circuito impreso por su amplia simplificación de circuitería,
el costo para un sistema basado en microcontrolador es mucho menor y, lo mejor
de todo, el tiempo de desarrollo de su proyecto electrónico se disminuye
considerablemente.

CONCLUSION

Con lo investigado durante el trabajo, nos quedaron mas claras las diferencias entre
un microcontrolador y un microprocesador, los cuales en algún momento de
nuestras vidas quizás pudimos llegar a confundir los conceptos y relacionarnos
directamente a que son lo mismo cuando en realidad no lo es. Por su parte un
microprocesador es un elemento que realiza operaciones aritméticas, el cual no
dispone de entradas y salidas como un microcontrolador si las tiene. Identificamos
algunas otras diferencias ventajas y desventajas entre ellos, como la velocidad de
realizar estas operaciones en la cual los microprocesadores superan a los
microcontroladores.

BIBLIOGRAFIA

Aguayo, P. (2004). Introducción al Microcontrolador. Artículo, noviembre.

Valdés, F., & Areny, R. P. (2007). Microcontroladores fundamentos y aplicaciones


con PIC (Vol. 1149). Marcombo.

Reynada, L. P. (2019). Microprocesadores.

También podría gustarte