Está en la página 1de 4

Arquitectura Von Newman

Esta arquitectura fue utilizada en la computadora ENIAC. Consiste en una unidad


central de proceso se comunica a través de un solo bus con un banco de memoria en
donde se almacenan tanto los códigos de instrucción del programa, como los datos
que serán procesados por este. Esta arquitectura es la más empleada en la actualidad
ya, que es muy versátil. Ejemplo de esta versatilidad es el funcionamiento de los
compiladores, los cuales son programas que toman como entrada un archivo de texto
conteniendo código fuente y generan como datos de salida, el código máquina que
corresponde a dicho código fuente (Son programas que crean o modifican otros
programas). Estos datos de salida pueden ejecutarse como un programa
posteriormente ya que se usa la misma memoria para datos y para el código del
programa.
BUS PRINCIPAL

 PROCESADOR
 ALU
 REGISTROS
 UNIDAD DE CONTROL

Diagrama a bloques de la arquitectura Von Newman


La principal desventaja de esta arquitectura, es que el bus de datos y direcciones único
se convierte en un cuello de botella por el cual debe pasar toda la información que se
lee de o se escribe a la memoria, obligando a que todos los accesos a esta sean
secuenciales. Esto limita el grado de paralelismo (acciones que se pueden realizar al
mismo tiempo) y por lo tanto, el desempeño de la computadora. Este efecto se conoce
como el cuello de botella de Von Newman En esta arquitectura apareció por primera
vez el concepto de programa almacenado. Anteriormente la secuencia de las
operaciones era dictada por el alambrado de la unidad de control, e cambiarla
implicaba un proceso de recableado laborioso, lento (hasta tres semanas) y propenso a
errores. En esta arquitectura se asigna un código numérico a cada instrucción. Dichos
códigos se almacenan en la misma unidad de memoria que los datos que van a
procesarse, para ser ejecutados en el orden en que se almacenados en memoria. Esto
permite cambiar rápidamente la aplicación de la computadora y dio origen a las
computadoras de propósito general. Mas a detalle, el procesador se subdivide en una
unidad de control (C.U.), una unidad lógica aritmética (A.L.U.) y una serie de registros.
Los registros sirven para almacenar internamente datos y estado del procesador. La
unidad aritmética lógica proporciona la capacidad de realizar operaciones aritméticas y
lógicas. La unidad de control genera las señales de control para leer el código de las
instrucciones, decodificarlas y hacer que la ALU las ejecute.
Arquitectura Harvard
Esta arquitectura surgió en la universidad del mismo nombre, poco después de que la
arquitectura Von Newman apareciera en la universidad de Princeton. Al igual que en la
arquitectura Von Newman, el programa se almacena como un código numérico en la
memoria, pero no en el mismo espacio de memoria ni en el mismo formato que los
datos. Por ejemplo, se pueden almacenar las instrucciones en bits en la memoria de
programa, mientras los datos de almacenan en 8 bits en una memoria aparte
Diagrama a bloques de la arquitectura de Harvard
Bus de programa PROCESADOR Bus de datos

Diagrama a bloques de la arquitectura de Harvard


El hecho de tener un bus separado para el programa y otro para los datos permite que
se lea el código operación de una instrucción, al mismo tiempo se lee de la memoria de
datos los operados de la instrucción previa. Así se evita el problema del cuello de
botella de Von Newman y se obtiene un mejor desempeño En la actualidad la mayoría
de los procesadores modernos se conectan al exterior de manera similar a la
arquitectura Von Newman, con un banco de memoria masivo único, pero
internamente incluyen varios niveles de memoria cache con bancos separados en
cache de programa y cache de datos, buscando un mejor desempeño sin perder la
versatilidad
Arquitectura de computadoras
La arquitectura de computadoras es el diseño conceptual y la estructura operacional
fundamental de un sistema de computadora. Es decir, es un modelo y una descripción
funcional de los requerimientos y las implementaciones de diseño para varias partes
de una computadora, con especial interés en la forma en que la unidad central de
proceso (UCP) trabaja internamente y accede a las direcciones de memoria. También
suele definirse como la forma de seleccionar e interconectar componentes de
hardware para crear computadoras según los requerimientos de funcionalidad,
rendimiento y costo. El ordenador recibe y envía la información a través de los
periféricos por medio de los canales. La UCP es la encargada de procesar la
información que le llega al ordenador. El intercambio de información se tiene que
hacer con los periféricos y la UCP. Todas aquellas unidades de un sistema exceptuando
la UCP se denomina periférico, por lo que el ordenador tiene dos partes bien
diferenciadas, que son: la UCP (encargada de ejecutar programas y que está
compuesta por la memoria principal, la Unidad aritmético lógica (UAL) y la Unidad de
Control) y los periféricos (que pueden ser de entrada, salida, entrada-salida y
comunicaciones).
Arquitectura Clásica
Estas arquitecturas se desarrollaron en las primeras computadoras electromecánicas y
de tubos de Aun son usadas en procesadores empotrados de gama baja y son la base
de la mayoría de las Arquitecturas modernas.

 La arquitectura de von Neumann es una familia de arquitecturas de


computadoras que utilizan el mismo dispositivo de almacenamiento tanto para
las instrucciones como para los datos (a diferencia de la arquitectura Harvard).
La mayoría de computadoras modernas están basadas en esta arquitectura, aunque
pueden incluir otros dispositivos adicionales (por ejemplo, para gestionar las
interrupciones de dispositivos externos como ratón, teclado, etc).
Los ordenadores con esta arquitectura constan de cinco partes: La unidad aritmético-
lógica o ALU, la unidad de control, la memoria, un dispositivo de entrada/salida y el
bus de datos que proporciona un medio de transporte de los datos entre las distintas
partes.
Un ordenador con esta arquitectura realiza o emula los siguientes pasos
secuencialmente:
Enciende el ordenador y obtiene la siguiente instrucción desde la memoria en la
dirección indicada por el contador de programa y la guarda en el registro de
instrucción.
Aumenta el contador de programa en la longitud de la instrucción para apuntar a la
siguiente.
Decodifica la instrucción mediante la unidad de control. Ésta se encarga de coordinar
el resto de componentes del ordenador para realizar una función determinada.
Se ejecuta la instrucción. Ésta puede cambiar el valor del contador del programa,
permitiendo así operaciones repetitivas. El contador puede cambiar también cuando
se cumpla una cierta condición aritmética, haciendo que el ordenador pueda 'tomar
decisiones', que pueden alcanzar cualquier grado de complejidad, mediante la
aritmética y lógica anteriores.
 Originalmente, el término Arquitectura Harvard hacía referencia a las
arquitecturas de computadoras que utilizaban dispositivos de almacenamiento
físicamente separados para las instrucciones y para los datos (en oposición a la
Arquitectura de von Neumann). El término proviene de la computadora
Harvard Mark I, que almacenaba las instrucciones en cintas perforadas y los
datos en interruptores.
Todas las computadoras constan principalmente de dos partes, la CPU que procesa los
datos, y la memoria que guarda los datos. Cuando hablamos de memoria manejamos
dos parámetros, los datos en sí, y el lugar donde se encuentran almacenados (o
dirección). Los dos son importantes para la CPU, pues muchas instrucciones frecuentes
se traducen a algo así como "coge los datos de ésta dirección y añádelos a los datos de
ésta otra dirección", sin saber en realidad qué es lo que contienen los datos.
En los últimos años la velocidad de las CPUs ha aumentado mucho en comparación a la
de las memorias con las que trabaja, así que se debe poner mucha atención en reducir
el número de veces que se accede a ella para mantener el rendimiento. Si, por
ejemplo, cada instrucción ejecutada en la CPU requiere un acceso a la memoria, no se
gana nada incrementando la velocidad de la CPU (este problema es conocido como
limitación de memoria).
Se puede fabricar memoria mucho más rápida, pero a costa de un precio muy alto. La
solución, por tanto, es proporcionar una pequeña cantidad de memoria muy rápida
conocida con el nombre de memoria caché. Mientras los datos que necesita el
procesador estén en la caché, el rendimiento será mucho mayor que si la caché tiene
que obtener primero los datos de la memoria principal. La optimización de la caché es
un tema muy importante de cara al diseño de computadoras.
La arquitectura Harvard ofrece una solución particular a este problema. Las
instrucciones y los datos se almacenan en cachés separadas para mejorar el
rendimiento. Por otro lado, tiene el inconveniente de tener que dividir la cantidad de
caché entre los dos, por lo que funciona mejor sólo cuando la frecuencia de lectura de
instrucciones y de datos es aproximadamente la misma. Esta arquitectura suele
utilizarse en DSPs, o procesador de señal digital, usados habitualmente en productos
para procesamiento de audio y video.

También podría gustarte