El modelo de von Neumman es un diseño que usa una memoria para almacenar
instrucciones y datos. Éste tipo de máquina es la implementación de una máquina de
Turing y la visión de una arquitectura secuencial en lugar de paralela.
Los componentes principales de la Arquitectura de von Neumann tiene tres
bloques constructivos básicos: la Unidad Central de Proceso (ó CPU por su sigla en
inglés), la Memoria y la Entrada/Salida.
Este modelo se diferencia del Harvad porque:
El diseño de una arquitectura von Neumann es más simple que la arquitectura
Harvard más moderna, que también 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.
La CPU en este modelo, conocido como arquitectura de von Neumann, una
computadora está compuesta por una unidad central de procesamiento (que se
encarga de ejecutar las instrucciones de los programas), una memoria (en la que se
almacenan los datos y los programas), y dispositivos de entrada y salida que permiten
el ingreso.
La memoria principal es utilizada para almacenar tanto programas como datos. La
memoria se clasifica en función de distintos aspectos:
•Por la forma de acceso.
•Por la forma de retención de los datos.
El modelo de von Neumann es considerado fundamental para la arquitectura de
computadoras modernas porque la idea fundamental de von Neumann se apoya en
el hecho que una operación compleja normalmente se puede dividir como una
secuencia ordenada de operaciones más simples.
Las instrucciones secuencias son :
•Unidad Central de Proceso (CPU)
La CPU de un sistema informático repite una serie de pasos en los que
continuamente accede a memoria para leer la próxima instrucción a ejecutar, realiza
lo que ordena la instrucción y vuelve a empezar.
En una CPU podemos distinguir:
Unidad aritmético lógica (ALU):
Se encarga de realizar las operaciones aritméticas y lógicas con los datos.
Normalmente los datos con los que opera, así como los resultados de la operación se
encuentran en registros de la CPU.
•Banco de registros: Proporciona un espacio de almacenamiento para los datos con
los que trabaja la CPU. Normalmente se distingue entre:
°Registros de datos: Guardan la información con la que se trabaja.
°Registros de direcciones: Guardan direcciones de memoria (en las que puede haber
datos).
°Registros de control: Controlan el estado de la CPU (flags: zero, positivo/negativo…)
•Unidad de control: Se encarga de leer las instrucciones máquina almacenadas en la
memoria principal y de generar las señales de control necesarias para controlar y
coordinar el resto de las unidades funcionales de un ordenador.
*Partes fundamentales*:
•Registro de instrucción: Guarda la instrucción que se está ejecutando.
•Decodificador: Interpreta la instrucción a ejecutar.
Los dos tipos más frecuentes de unidades de control son:
•Cableada: La lógica de las operaciones está implementada mediante hardware.
•Microprogramada: Se trata de una pequeña CPU en miniatura que puede
programarse para realizar diferentes tareas. Son más flexibles pero más lentas.
•Buses: Transportan la información entre los diferentes elementos de la CPU. Se
distingue entre el bus de datos y el bus de control.
La memoria principal tiene por objeto guardar información que es accesible a la
CPU. La CPU puede leer y/o escribir datos en las diferentes posiciones de memoria
que componen la memoria principal.
•Memoria RAM (Random Access Memory): Memoria de acceso aleatorio (no tiene
porqué ser utilizada de manera secuencial) que permite tanto la lectura como la
escritura.
•Memoria ROM (Read Only Memory): Memoria de acceso aleatorio que sólo permite
la lectura de los datos que almacena.
•Controlador de Entrada/Salida (I/O)
Los periféricos del sistema informático se pueden clasificar en:
•Periféricos de entrada: Si sirven para introducir información en el sistema
informático (ej. Teclado, ratón…)
•Periféricos de salida: Si representan información que sale del sistema informático
(ej. Monitor, impresora…)
Los buses del sistema son las vias de comunicación que permiten mover la
información entre los distintos elementos de la arquitectura Von Newmann.
•Bus de datos: Como su nombre indica transporta datos. Estos datos pueden ser la
información que se está procesando o las instrucciones del programa que se ejecuta.
En la arquitectura Von Newmann el programa está guardado en el interior del sistema
informático codificado como información.
•Bus de direcciones: El bus de direcciones se utiliza para indicar el origen y/o el
destino de los datos. En el bus de direcciones se indica la posición de memoria a la
que se está accediendo en cada momento.
•Bus de control: El bus de control proporciona señales para coordinar las diferentes
tareas que se realizan en el sistema informático.
La memoria caché es una memoria secundaria y está relacionada con este modelo;
la memoria principal se puede llenar pero la memoria caché no ya que es la
secundaria.