Vous êtes sur la page 1sur 5

Arquitectura Harvard

La arquitectura Harvard es una arquitectura de computadora con pistas


de almacenamiento y de seal fsicamente separadas para las instrucciones y
para los datos. El trmino proviene de la computadora Harvard Mark I basada
en rels, que almacenaba las instrucciones sobre cintas perforadas (de 24 bits
de ancho) y los datos en interruptores electromecnicos. Estas primeras
mquinas tenan almacenamiento de datos totalmente contenido dentro la
unidad central de proceso, y no proporcionaban acceso al almacenamiento de
instrucciones como datos. Los programas necesitaban ser cargados por un
operador; el procesador no podra arrancar por s mismo.
Hoy en da (2016), la mayora de los procesadores implementan dichas vas de
seales separadas por motivos de rendimiento, pero en realidad implementan
una arquitectura Harvard modificada, para que puedan soportar tareas tales
como la carga de un programa desde una unidad de disco como datos para su
posterior ejecucin.
En la arquitectura Harvard, no hay necesidad de hacer que las dos memorias
compartan caractersticas. En particular, pueden diferir la anchura de palabra,
el momento, la tecnologa de implementacin y la estructura de direccin de
memoria. En algunos sistemas, se pueden almacenar instrucciones
en memoria de solo lectura mientras que, en general, la memoria de datos
requiere memoria de lectura-escritura. En algunos sistemas, hay mucha ms
memoria de instrucciones que memoria de datos as que las direcciones de
instruccin son ms anchas que las direcciones de datos.

Usos modernos de la arquitectura Harvard


La principal ventaja de la arquitectura Harvard pura acceso simultneo a
ms de una memoria del sistemase ha reducido por procesadores Harvard
modificados utilizando sistemas de cach de CPU modernos. Las mquinas de
arquitectura Harvard relativamente puras utilizan principalmente en
aplicaciones cuyas compensaciones, como los costes y el ahorro de energa de
cachs derivadas de la omisin de cach, superan a las sanciones de
programacin desde ofreciendo distintos espacios de cdigo hasta espacios de
direccin de datos.
En general, los procesadores de seal digital (DSPs) ejecutan pequeos
algoritmos altamente optimizados de procesamiento de audio o vdeo.
Evitan cachs porque su comportamiento debe ser extremadamente
reproducible. Las dificultades de lidiar con mltiples espacios de
direcciones son una preocupacin secundaria a la velocidad de
ejecucin. En consecuencia, algunos DSPs cuentan con mltiples
memorias de datos en distintos espacios de direcciones para facilitar

tanto el procesamiento SIMD como el VLIW. A modo de ejemplo, los


procesadores Texas Instruments TMS320 C55x, cuentan con varios buses
de datos en paralelo (dos de escritura, tres de lectura) y un bus de
instrucciones.
Los microcontroladores se caracterizan por tener pequeas cantidades
de programa (memoria flash) y memoria de datos (SRAM), sin cache, y
aprovechan la arquitectura de Harvard para acelerar el procesamiento
de la instruccin simultnea y el acceso a datos. El almacenamiento
separado significa que el programa y memorias de datos pueden
presentar diferentes anchos de bit, por ejemplo, utilizando instrucciones
de 16 bits de ancho y los datos de ancho de 8 bits. Tambin significa que
la instruccin de captacin previa puede llevarse a cabo en paralelo con
otras actividades. Entre los ejemplos se incluyen el AVR de Atmel Corp y
la PIC de Microchip Technology, Inc..
Incluso en estos casos, es comn emplear instrucciones especiales con el fin de
acceder a la memoria del programa como si fueran tablas de datos de solo
lectura, o para la reprogramarla; esos procesadores son de arquitectura
Harvard modificada.

Arquitectura Von Neumann

La arquitectura Von Neumann, tambin conocida como modelo de Von


Neumann o arquitectura Princeton, es una arquitectura de
computadoras basada en la descrita en 1945 por el matemtico y fsico John
von Neumann y otros, en el primer borrador de un informe sobre el EDVAC.
Este describe una arquitectura de diseo para un computador digital
electrnico con partes que constan de una unidad de procesamiento que
contiene una unidad aritmtico lgica y registros del procesador, una unidad
de control que contiene un registro de instrucciones y un contador de
programa, una memoria para almacenar tanto datos como
instrucciones, almacenamiento masivo externo, y mecanismos de entrada y
salida. El significado ha evolucionado hasta ser cualquier computador de
programa almacenado en el cual no pueden ocurrir una extraccin de
instruccin y una operacin de datos al mismo tiempo, ya que comparten
un bus en comn. Esto se conoce como el cuello de botella Von Neumann y
muchas veces limita el rendimiento del sistema.
El diseo de una arquitectura Von Neumann es ms simple que la arquitectura
Harvard ms moderna, que tambin es un sistema de programa almacenado,
pero tiene un conjunto dedicado de direcciones y buses de datos para leer
datos desde memoria y escribir datos en la misma, y otro conjunto de
direcciones y buses de datos para ir a buscar instrucciones.
Un computador digital de programa almacenado es una que mantiene
sus instrucciones de programa, as como sus datos, en memoria de acceso
aleatorio (RAM) de lectura-escritura. Las computadoras de programa
almacenado representaron un avance sobre los ordenadores controlados por
programas de la dcada de 1940, como la Colossus y la ENIAC, que fueron
programadas por ajustando interruptores e insertando parches, conduciendo
datos de la ruta y para controlar las seales entre las distintas unidades
funcionales. En la gran mayora de las computadoras modernas, se utiliza la
misma memoria tanto para datos como para instrucciones de programa, y la
distincin entre Von Neumann vs. Harvard se aplica a la arquitectura de
memoria cach, pero no a la memoria principal.

Las computadoras son mquinas de arquitectura von Neumann cuando:


1. Tanto los programas como los datos se almacenan en una memoria en
comn. Esto hace posible la ejecucin de comandos de la misma forma
que los datos.
2. Cada celda de memoria de la mquina se identifica con un nmero
nico, llamado direccin.
3. Las diferentes partes de la informacin (los comandos y los datos) tienen
diferente modos de uso, pero la estructura no se representa en memoria
de manera codificada.
4. Cada programa se ejecuta de forma secuencial que, en el caso de que
no haya instrucciones especiales, comienza con la primera instruccin.

Para cambiar esta secuencia se utiliza el comando de control de


transferencia.

Estructura clsica de las mquinas von Neumann


Una mquina Von Neumann, al igual que prcticamente todos los
computadores modernos de uso general, consta de cuatro componentes
principales:

Dispositivo de operacin (DO), que ejecuta instrucciones de un conjunto


especificado, llamado sistema (conjunto) de instrucciones, sobre
porciones de informacin almacenada, separada de la memoria del
dispositivo operativo (aunque en la arquitectura moderna el dispositivo
operativo consume ms memoria -generalmente del banco de
registros-), en la que los operandos son almacenados directamente en el
proceso de clculo, en un tiempo relativamente corto
Unidad de control (UC), que organiza la implementacin consistente de
algoritmos de decodificacin de instrucciones que provienen de la
memoria del dispositivo, responde a situaciones de emergencia y realiza
funciones de direccin general de todos los nodos de computacin. Por
lo general, el DO y la UC conforman una estructura llamada CPU. Cabe
sealar que el requisito es consistente, el orden de la memoria (el orden
del cambio de direccin en el contador de programa) es fundamental a
la hora de la ejecucin de la instruccin. Por lo general, la arquitectura
que no se adhiere a este principio no se considera von Neumann
Memoria del dispositivo un conjunto de celdas con identificadores
nicos (direcciones), que contienen instrucciones y datos.
Dispositivo de E/S (DES), que permite la comunicacin con el mundo
exterior de los computadores, son otros dispositivos que reciben los
resultados y que le transmiten la informacin al computador para su
procesamiento.

Evolucin
A lo largo de las dcadas de los aos 1960 y 1970, las computadoras
hicieron, en general, tanto ms pequeas como rpidas, lo que llev a
algunas evoluciones en su arquitectura. Por ejemplo, el mapeado en

memoria de E/S permiti que los dispositivos de entrada y salida sean


tratados de la misma como la memoria. Un nico bus de sistema podra ser
utilizado para proporcionar un sistema modular con un menor coste. A
veces esto se denomina "racionalizacin" de la arquitectura. En las dcadas
siguientes, los microcontroladores sencillos seran algunas veces omitir
caractersticas del modelo a menor costo y tamao. Las computadoras ms
grandes aaden caractersticas para un mayor rendimiento.

Vous aimerez peut-être aussi