You are on page 1of 7

Arquitectura tradicional

Arquitectura propuesta por Jhon Von Newmann, en la cual se


permite el diseo de programas con cdigos, en computadores y
microprocesadores, aunque dicha arquitectura no se puede encontrar
en ordenadores modernos.
El CPU se encuentra conectado a una nica memoria en la cual se
encuentran datos, e instrucciones programadas. Un microprocesador
de 8 bits, posee un bus de 8 bits el cual se conecta con la memoria,
dicho bus limita la velocidad de operacin, ya que no puede realizar
una bsqueda de instrucciones, mientras no finalice una transferencia
de datos de una instruccin anterior. Por lo tanto las principales
limitaciones son:
1.-La longitud de las instrucciones est limitada por la longitud de los
datos.
2.- Velocidad de operacin limitada, un nico bus es utilizado para
datos e instrucciones.

Arquitectura Harvard

Arquitectura en la cual el CPU se encuentra conectado a dos


memorias por medio de diferentes buses, los cuales pueden ser de
diferente ancho. Dichas memorias son utilizadas para un solo proceso
en especfico, como el contener instrucciones de programa (Memoria
de programa), y el almacenar datos (Memoria de datos). Como los
buses son independientes el CPU puede acceder a las dos memorias
al mismo tiempo, esto quiere decir que puede ejecutar una
instruccin, mientras est leyendo una prxima instruccin a ejecutar.

Ventajas

1.-mayor velocidad y menor longitud de programa


2.-mayor velocidad de operacin

Desventaja

Se debe acceder a tablas de valores constantes necesarias para el


programa, por medio de instrucciones especiales, (por ejemplo la
EPROM de un microprocesador).

MAPAS DE MEMORIA INTERNA (RAM)

La memoria interna de datos o archivo de registros de encuentra


dividida en:
1.-registros especiales.- ocupan las primeras 11 posiciones (00 0B),
adems contienen el contador del Real Time Clock/Counter (RTCC), y
un registro de puntero File Select Register (FSR). La posicin 00 es
utilizada en el direccionamiento indirecto.
2.-registros de propsito general.- ocupa las posiciones (08 4F), y se
dividen en:
a.- registros de posicin fija.-ocupan 8 posiciones (08 0F)
b.- bancos de registros.- consisten en cuatro grupos o bancos de 16
registros cada uno, superpuestos en las direcciones de (10 1F), se

puede operar con un solo banco a la vez, el cual se selecciona


mediante los bits 5 y 6 del (FSR).
MEMORIA DE PROGRAMA

Dicha memoria puede ser de 512 a 12k en los PIC16C5X, en la


programacin puede estar compuesta por secciones de 512
posiciones, y divida en mitades de 128 posiciones.

REGISTRO DE FUNCIONES

En los microcontroladores tradicionales la salida de la ALU va a la


entrada del acumulador, por lo cual el resultado de una operacin
quedara en este registro, por lo cual siempre hay que mover el
acumulador a la memoria con instrucciones adicionales.
En los PIC en las instrucciones de doble operando, uno de los datos
siempre debe estar en el registro W, la gran ventaja es que permite
un ahorro en las instrucciones, ya que el resultado, puede dejarse en
la misma posicin de memoria o en el registro W. En la memoria de
los PICs se encuentran ubicados los registros de control, perifricos y
posiciones de memoria de uso general de los microprocesadores.

CONTADOR DE PROGRAMA

Registro denominado PC , contiene la direccin de la prxima


instruccin a ejecutar. Algunas instrucciones de control cambian el
contenido del PC alterando la secuencia lineal de ejecucin. dentro
de las cuales se encuentra el GOTO y CALL, los cuales cargan en
forma directa un valor constante en el Pc produciendo que el
programa salte a cualquier posicin de la memoria, otra instruccin
es el SKIP, los cuales producen un incremento adicional del Pc, esto
quiere decir que el programa salta sin ejecutar la instruccin
siguiente.
Al resetear el microprocesador, todos los bits toman el valor de 1, por
lo tanto la direccin de arranque del programa es la ltima posicin
de memoria de programa, Adems el Pc es accesible al programador
en la posicin 02, es decir que cualquier instruccin que opere sobre
el registro puede alterar y desviar la ejecucin del programa.

STACK

Memoria interna dedicada, de tamao limitado y separada de las


memorias de datos y de programa, inaccesible al programador.
Utilizada para almacenar las direcciones de retorno de subrutinas e
interrupciones.

PUERTOS DE ENTRADA / SALIDA

Los microprocesadores PIC16C5X tienen dos o tres puestos en


paralelo, (Puerto A,B,C)

DIAGRAMA LOGICO

imagen pag 11

TEMPORIZADOR / CONTADOR (RTCC)

Es un contador de 8 bits, constituido por un registro operacional


ubicado en la posicin 01, este registro puede usarse para contar
eventos externos por medio de un pin de entrada, o para contar
pulsos internos de reloj de frecuencia constante, adems se puede
insertar un prescaler o divisor de frecuencia el cual permite dividir por
2,4,8,16, , 256 , segn sea programado puede presentarse como
prescaler o postscaler.

INTERRUPCIONES

Es el mecanismo por el cual un evento interno o externo puede


interrumpir la ejecucin del programa, produciendo automticamente
un salto a una subrutina, para luego retornar en la ejecucin donde
fue producida la interrupcin, este mecanismo es muy til para el
manejo de timers o rutinas repetitivas.
Las interrupciones se comportan como las subrutinas. En uno de los
registros de control del sistema de interrupciones existe un bit de
habilitacin, que puede ser programado en 1 para que las
interrupciones pueden actuar, al producirse la interrupcin, el bit se
borra para evitar nuevas interrupciones imagen pag 14
La seal que produce una interrupcin es el resultado de la
combinacin de todas las fuentes posibles y de los bits de
habilitacin.

PROGRAMA FUENTE

Este programa se encuentra compuesto por sucesiones de lneas de


programa, donde cada lnea est constituida por 4 campos
separados, los cuales son:
[Etiqueta] comando [operando] [comentario]
Donde:
Etiqueta (opcional).- campo que empieza en la primera lnea, no debe
poseer espacios o tabulaciones, porque puede considerarse comando.
Comando.-es un conjunto de instrucciones, o cdigos del
microcontrolador, el cual puede traducirse a cdigo de mquina, o ser
interpretado por el compilador.
Operando.- est asociado al comando .
Comentario (opcional).-debe empezar con un carcter punto o coma,
no necesita tener espacios.

CONJUNTO DE INSTRUCCIONES

Consiste en un pequeo conjunto de 33 instrucciones de 12 bits,


divididas en cinco categoras:

1.-agrupacion de instrucciones que operen con bytes, y algn registro


de memoria interna.
Las instrucciones pueden ser de simple o doble operando

Estas instrucciones sirven para la manipulacin de bits, y para


realizar operaciones aritmticas

2.-se analizan las instrucciones que operan en el registro W.

3.-se agrupan las instrucciones que operan sobre bits individuales de


los registros de la memoria interna.

4.-clasificacion de las instrucciones de control del programa

Donde k es la direccin de destino de salto, es decir desde donde se


leera las instrucciones.

Instrucciones de salteo (skip), instrucciones que sirven para


implementar bifurcaciones condicionales en el programa, permiten al
programa tomar decisiones en funcin de cualquier bit, posicin de la
memoria de datos.

Instrucciones de incremento y decremento

5.-agurpacion de instrucciones, cuyas funciones son especficas.

MODOS DE DIRECCIONAMIENTO

Forma directa
La memoria interna se direcciona por medio de los 5 bits f,
contenidos en las instrucciones que operan sobre registros, de esta
manera se direcciona cualquier posicin desde 00 hasta 1F. En los
microcontroladores que tengan ms de un banco, el programador
debe asegurarse de programar los bits de seccin de banco en el
registro (FSR).

Direccionamiento indirecto
Se utiliza el registro FSR, porque adems de servir para seleccionar
bancos, sirve tambin como puntero. La posicin 00 del mapa de RAM
es llamada direccin indirecta, si se opera con la direccin 00, en
realidad se estar operando con la direccin donde apunte el
contenido FSR.

HERRAMIENTA DE DESARROLLO

MPLAB
Es un entorno de desarrollo integrado, mediante el cual se puede
desarrollar aplicaciones para los microcontroladores de las familias 16
y 17, adems permite:
1.-depurar y optimizar los programas desarrollados.
2.- Detectar errores
3.-depurar programas utilizando puntos de corte (breakpoints)
4.-realiza medidas de tiempo utilizando un cronometro

5.-mirar variables en las ventanas de observacin

Software ensamblador
Microchip presenta dos entornos , uno pa DOS llamado MPASM.exe y
la otra para Windows llamado MPASMWIN.exe, estas presentaciones
soportan todos los microcontroladores de la familia PIC de microchip.

You might also like