jueves, 11 de septiembre de 2014

Arquitectura de Von Neumann

Hacia 1950, John Von Neumann tuvo la idea de construir una máquina que "memorizara" una serie de órdenes y un grupo de datos, para que pudiera luego "trabajar sola" hasta lograr un resultado.

La arquitectura Von Neumann es un modelo de organización en arquitecturas de computadoras que utilizan el mismo dispositivo de almacenamiento tanto para las instrucciones como para los datos

John Von Neumann

La idea de Von Neumann consiste en conectar permanentemente las unidades de la computadora, de modo que todo el ordenador está coordinado por un control central. Para evitar tener que cablear las unidades cada vez que se quería ejecutar un nuevo programa, se ideó un método donde tanto las instrucciones que forman los programas como los datos que utilizan éstos se almacenan en una memoria.

Arquitectura y Organización

Los diferentes elementos físicos que componen un ordenador podemos dividirlos, según la tarea que realizan, en las siguientes unidades funcionales:
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.

La Unidad Central de Proceso (CPU)

La Unidad Central de Proceso o CPU controla y coordina todas las operaciones del ordenador. Está constituida por dos elementos básicos: la Unidad de Control (UC) y la Unidad Aritmético-Lógica (ALU).
  • La Unidad de Control es la encargada de controlar la ejecución de las instrucciones en el orden indicado en el programa, secuencia de operaciones necesarias para ejecutar cada instrucción. Realiza la coordinación entre la ALU, la memoria principal y el resto de componentes. La UC consta de una serie de registros, un decodificador y un reloj:
  • Los registros se encargan de almacenar la información que utiliza la UC en un momento dado. Entre los principales registros están los siguientes:
    • Registro CP (Contador de Programa): almacena la dirección de memoria de la siguiente instrucción que se debe ejecutar. Los programas de ordenador constan de varias instrucciones que han de estar en memoria principal al ser ejecutados.
    • Registro RI (Registro de Instrucción): almacena la instrucción que se está ejecutando en cada momento.
    • Registros de propósito general: pequeñas zonas de memoria de acceso muy rápido que almacenan los datos a los que se va a acceder de forma inmediata.
  • El decodificador está compuesto por los circuitos encargados de determinar qué se debe hacer teniendo en cuenta el código de la instrucción a ejecutar y los valores del registro de estado.
  • El reloj indica el momento en que se debe ejecutar cada paso de la ejecución de una instrucción. La velocidad del reloj se mide en Hertzios (pulsos de reloj por segundo).
  • La Unidad Aritmético-Lógica (ALU), es la encargada de realizar las operaciones aritméticas (sumas, restas, multiplicaciones,…) y lógicas (NOT, AND, OR, XOR,…) que le ordene la Unidad de Control (UC). Está compuesta por:
    • Circuitos digitales que realizan las operaciones solicitadas por la Unidad de Control.
    • Registros que almacenan los operandos participantes en las operaciones. se divide en:Registro acumulador que almacena el resultado.Registro de estado que proporciona información sobre el estado de la última operación. Después de realizar ciertas operaciones se toman decisiones en función del resultado y almacenar características del resultado en un solo bit sirve para ser más rápido al evaluar la condición
Unidad de Control


La función principal de la unidad de control de la CPU es dirigir la secuencia de pasos de modo que la computadora lleve a cabo un ciclo completo de ejecución de una instrucción, y hacer esto con todas las instrucciones de que conste el programa. Los pasos para ejecutar una instrucción cualquiera son los siguientes:
  1. Ir a la memoria y extraer el código de la siguiente instrucción (que estará en la siguiente celda de memoria por leer). 
  2. Decodificar la instrucción recién leída (determinar de que instrucción se trata).
  3. Ejecutar la instrucción.
  4. Prepararse para leer la siguiente casilla de memoria (que contendrá la siguiente instrucción), y volver al paso 1 para continuar.
La unidad de control ejecutara varias veces este ciclo de cuatro “instrucciones alambradas” a una enorme velocidad.

La Memoria

La memoria está formada por circuitos electrónicos que almacenan valores binarios (bits) en cada celda de memoria. Almacena la información que va a ser utilizada por la CPU: datos e instrucciones de los programas a ejecutar. 
Al hablar de una memoria tenemos que tener en cuenta dos parámetros fundamentales:
  • Se llama ancho de palabra al tamaño menor que se puede leer o escribir simultáneamente en la memoria. Depende de la memoria y del bus que se encarga de mover los datos. Algunos tamaños actuales son 32 o 64 bits.
  • Las direcciones de memoria se utilizan para identificar cada palabra de memoria, y son usadas en las instrucciones que ejecuta el procesador para indicar a qué información se quiere acceder. Cuanto mayor sea la memoria, a más direcciones de memoria podré acceder. Actualmente se trabaja con 32 y 64 bits.

Los Buses

En Informática, bus es el conjunto de conductores eléctricos en forma de pistas metálicas impresas sobre la tarjeta madre del computador, por donde circulan las señales que corresponden a los datos binarios del lenguaje máquina con que opera el Microprocesador.
Hay tres clases de buses: Bus de Datos, Bus de Direcciones y Bus de Control. 
  1. Bus de Datos: mueve los datos entre los dispositivos del hardware de Entrada como el Teclado, el Escáner, el Ratón, entre otros; de salida como la Impresora, el Monitor o la tarjeta de Sonido; y de Almacenamiento como el Disco Duro, el Diskette o la Memoria-Flash. Estas transferencias que se dan a través del Bus de Datos son gobernadas por varios dispositivos y métodos, de los cuales el Controlador PCI, "Peripheral Component Interconnect", Interconexión de componentes Periféricos, es uno de los principales. Su trabajo equivale, simplificando mucho el asunto, a una central de semáforos para el tráfico en las calles de una ciudad.
  2. El Bus de Direcciones: está vinculado al bloque de Control de la CPU para tomar y colocar datos en el Sub-sistema de Memoria durante la ejecución de los procesos de cómputo.
  3. El Bus de Control: transporta señales de estado de las operaciones efectuadas por el CPU con las demás unidades.




No hay comentarios:

Publicar un comentario