julio 4, 2024

La maquina de von neumann

Diagrama de la máquina de von neumann

John von Neumann es quizás más conocido por su trabajo en el desarrollo temprano de los ordenadores: Como director del Proyecto de Ordenadores Electrónicos del Instituto de Estudios Avanzados de Princeton (1945-1955), desarrolló el MANIAC (analizador matemático, integrador numérico y ordenador), que fue en su momento el ordenador más rápido de su clase. También hizo importantes contribuciones en los campos de la lógica matemática, los fundamentos de la mecánica cuántica, la economía y la teoría de los juegos. Nació en Budapest y allí se licenció en ingeniería química antes de venir a EE.UU. Su principal puesto académico fue el de profesor en la

Cuello de botella von neumann

La arquitectura von Neumann -también conocida como modelo von Neumann o arquitectura de Princeton- es una arquitectura de ordenadores basada en la descripción realizada en 1945 por John von Neumann y otros en el Primer Borrador de un Informe sobre el EDVAC[1]:
El término «arquitectura von Neumann» ha evolucionado para referirse a cualquier ordenador de programa almacenado en el que una instrucción y una operación de datos no pueden ocurrir al mismo tiempo porque comparten un bus común. Esto se denomina cuello de botella von Neumann y suele limitar el rendimiento del sistema[3].
El diseño de una máquina de arquitectura von Neumann es más simple que el de una máquina de arquitectura Harvard, que también es un sistema de programa almacenado pero tiene un conjunto dedicado de buses de direcciones y datos para leer y escribir en la memoria, y otro conjunto de buses de direcciones y datos para obtener instrucciones.
Un ordenador digital de programa almacenado mantiene tanto las instrucciones del programa como los datos en una memoria de acceso aleatorio (RAM) de lectura y escritura. Los ordenadores de programa almacenado fueron un avance respecto a los ordenadores controlados por programa de los años 40, como el Colossus y el ENIAC. Estos últimos se programaban ajustando interruptores e insertando cables de conexión para dirigir los datos y las señales de control entre varias unidades funcionales. La gran mayoría de los ordenadores modernos utilizan la misma memoria para los datos y las instrucciones del programa, pero tienen cachés entre la CPU y la memoria y, en el caso de las cachés más cercanas a la CPU, tienen cachés separadas para las instrucciones y los datos, de modo que la mayoría de las recuperaciones de instrucciones y datos utilizan buses separados (arquitectura de caché dividida).

Retroalimentación

La unidad de control gestionará el proceso de entrada y salida de datos y programas de la memoria y también se encargará de llevar a cabo (ejecutar) las instrucciones del programa, de una en una. Esto incluye la idea de un «registro» para mantener los valores intermedios. En la ilustración anterior, el «acumulador» es uno de estos registros.
Esta parte de la arquitectura se dedica exclusivamente a realizar cálculos sobre los datos. Todos los cálculos habituales de sumar, multiplicar, dividir y restar estarán disponibles, pero también habrá comparaciones de datos como «mayor que», «menor que» o «igual a».
¿Nota las flechas entre los componentes? Esto implica que la información debe fluir entre las distintas partes del ordenador. En un ordenador moderno construido según la arquitectura Von Neumann, la información pasa de un lado a otro a lo largo de un «bus». Hay buses que identifican ubicaciones en la memoria: un «bus de direcciones».
La arquitectura Von Neumann ha tenido un éxito increíble, y la mayoría de los ordenadores modernos siguen esta idea. El chip de la CPU de un ordenador personal contiene una unidad de control y la unidad aritmética lógica (junto con algo de memoria local) y la memoria principal está en forma de memorias RAM situadas en la placa base.

Ejemplos de máquinas von neumann

La arquitectura von Neumann -también conocida como modelo von Neumann o arquitectura Princeton- es una arquitectura de ordenador basada en una descripción realizada en 1945 por John von Neumann y otros en el Primer Borrador de un Informe sobre el EDVAC[1]:
El término «arquitectura von Neumann» ha evolucionado para referirse a cualquier ordenador de programa almacenado en el que una instrucción y una operación de datos no pueden ocurrir al mismo tiempo porque comparten un bus común. Esto se denomina cuello de botella von Neumann y suele limitar el rendimiento del sistema[3].
El diseño de una máquina de arquitectura von Neumann es más simple que el de una máquina de arquitectura Harvard, que también es un sistema de programa almacenado pero tiene un conjunto dedicado de buses de direcciones y datos para leer y escribir en la memoria, y otro conjunto de buses de direcciones y datos para obtener instrucciones.
Un ordenador digital de programa almacenado mantiene tanto las instrucciones del programa como los datos en una memoria de acceso aleatorio (RAM) de lectura y escritura. Los ordenadores de programa almacenado fueron un avance respecto a los ordenadores controlados por programa de los años 40, como el Colossus y el ENIAC. Estos últimos se programaban ajustando interruptores e insertando cables de conexión para dirigir los datos y las señales de control entre varias unidades funcionales. La gran mayoría de los ordenadores modernos utilizan la misma memoria para los datos y las instrucciones del programa, pero tienen cachés entre la CPU y la memoria y, en el caso de las cachés más cercanas a la CPU, tienen cachés separadas para las instrucciones y los datos, de modo que la mayoría de las recuperaciones de instrucciones y datos utilizan buses separados (arquitectura de caché dividida).