Tradicionalmente los sistemas con microprocesadores se basan en esta arquitectura, en la cual
la unidad central de proceso (CPU), est conectada a una memoria principal nica (casi siempre slo RAM) donde se guardan las instrucciones del programa y los datos. A dicha memoria se accede a travs de un sistema de buses nico (control, direcciones y datos). En un sistema con arquitectura Von Neumann el tamao 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 ms unidades de 8 bits (bytes) de longitud. Si tiene que acceder a una instruccin o dato de ms de un byte de longitud, tendr que realizar ms de un acceso a la memoria. El tener un nico bus hace que el microprocesador sea ms lento en su respuesta, ya que no puede buscar en memoria una nueva instruccin mientras no finalicen las transferencias de datos de la instruccin anterior. * La mayora de las computadoras todava utilizan la arquitectura Von Neumann, propuesta a principios de los aos 40 por John Von Neumann. * La arquitectura Von Neumann describe a la computadora con 4 secciones principales: la unidad lgica y aritmtica (ALU), la unidad de control, la memoria, y los dispositivos de entrada y salida (E/S). * En este sistema, la memoria es una secuencia de celdas de almacenamiento numeradas, donde cada una es un bit, o unidad de informacin. La instruccin es la informacin necesaria para realizar, lo que se desea, con la computadora. Las celdas contienen datos que se necesitan para llevar a cabo las instrucciones, con la computadora. * El tamao de cada celda y el nmero de celdas vara mucho de computadora a computadora, y las tecnologas empleadas para la memoria han cambiado bastante; van desde los rels electromecnicos, tubos llenos de mercurio en los que se formaban los pulsos acsticos, matrices de imanes permanentes, transistores individuales a circuitos integrados con millones de celdas en un solo chip.
MEMORIA CENTRAL
INSTRUCCIONES + DATOS UNIDAD CENTRAL DE PROCESO UNIDAD DE MEMORIA RAM UNIDAD DE MEMORIA ROM Bus de control Bus de direcciones Bus de datos e instrucciones
Pasos que realiza secuencialmente:
primero Obtiene la siguiente instruccin desde la memoria en la direccin indicada por el contador de programa y la guarda en el registro de instruccin. segundo Aumenta el contador de programa en la longitud de la instruccin para apuntar a la siguiente.
tercero Descodifica la instruccin mediante la unidad de control. sta se encarga de coordinar el resto de componentes del ordenador para realizar una funcin determinada. cuarto Se ejecuta la instruccin. sta puede cambiar el valor del contador del programa, permitiendo as operaciones repetitivas. quinto Regresa al paso N 1. Arquitectura de von Neumann: Limitacione s 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.
La velocidad de operacin a causa del bus nico para datos e instrucciones que no deja acceder simultneamente a unos y otras, lo cual impide superponer ambos tiempos de acceso
Arquitectura Harvard: Este modelo, que utilizan los Microcontroladores PIC, 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 slo almacena datos (Memoria de Datos). Ambos buses son totalmente independientes lo que permite que la CPU pueda acceder de forma independiente y simultnea a la memoria de datos y a la de instrucciones. Como los buses son independientes estos pueden tener distintos contenidos en la misma direccin y tambin distinta longitud. Tambin la longitud de los datos y las instrucciones puede ser distinta, lo que optimiza el uso de la memoria en general. Para un procesador de Set de Instrucciones Reducido, o RISC (Reduced Instruccin Set Computer), el set de instrucciones y el bus de memoria de programa pueden disearse de tal manera que todas las instrucciones tengan una sola posicin de memoria de programa de longitud. Adems, al ser los buses independientes, la CPU puede acceder a los datos para completar la ejecucin de una instruccin, y al mismo tiempo leer la siguiente instruccin a ejecutar.
MEMORIA DE INSTRUCCIONES
UNIDAD DE MEMORIA ROM UNIDAD CENTRAL DE PROCESO
MEMORIA DE DATOS UNIDAD DE MEMORIA RAM Bus de control Bus de control Direccin de instrucciones Direcciones de datos Bus de instrucciones Bus de datos
a) Gama enana: (PIC12cxxx): la principal caracterstica es que son muy pequeos con encapsulados de 8 pines, y un juego de 33 instrucciones de 12 bits. b) Gama baja (PIC16c5xx): los encapsulados son de 18, 20 o 28 pines el igual el nmero de instrucciones es de 33 con un ancho de 12 bits. La memoria del programa es de 512 palabras, 1K o 2Ky la de datos esta comprendida entre 25 y 73 byte. No permite interrupciones. c) Gama media (PIC16Cxxx): es la gama ms variada y completa de los PIC, con encapsulados desde 18 a 68 pines. Tiene un conjunto de 35 instrucciones de 4 bits de ancho. Permita adems caractersticas como: permite interrupciones y posee una pila de 8 niveles que permite el anidamiento de subrutinas. d) Gama alta (PIC17Cxxx): tiene una arquitectura abierta, es decir, que sacan sus buses al exterior, el numero de instrucciones es de 58 con una anchura de 16 16 bit, tiene instrucciones vectorizadas. e) Gama mejorada (PIC18Cxxx): tiene memoria de programa de hasta 1M palabras. La mayora de las instrucciones son de 16 bits, aunque las hay de 32 bits. El nmero total de instrucciones es de 76. Esta gama esta diseada para aplicaciones de control. Arquitectura Harvard: El tamao de las instrucciones no esta relacionado con el de los datos, y por lo tanto puede ser optimizado para que cualquier instruccin ocupe una sola posicin de memoria de programa, logrando as mayor velocidad y menor longitud de programa. El tiempo de acceso a las instrucciones puede superponerse con el de los datos, logrando una mayor velocidad en cada operacin. Desventajas