Arquitectura

La arquitectura de las computadoras

El concepto de arquitectura en el entorno informático proporciona una descripción de la construcción y distribucuión física de los componentes de la computadora.

La arquitectura de una computadora explica la situación de sus componentes y permite determinar las posibilidades de que un sistema informático, con una determinada configuración, pueda realizar lasoperaciones para las que se va a utilizar.

Esta imagen que tenemos a continuación es la de una visión típica de una arquitectura de computadora como una serie de capas de abstracción:hardware , firmware, essamblador, kernel, sistema operativo y aplicaciones

https://i0.wp.com/html.rincondelvago.com/000368543.png

Dentro de la arquitectura de las computadoras podemos destacar principalmente 2 tipos de arquitecturas que son la arquitectura de Von Neumann y la arquitectura Harvard

Arquitectura de von Neumann:

La arquitectura de von Neumann es una familia de arquitectura 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).

Organización:

Los ordenadores con esta arquitectura constan de cinco partes: La unidad aritmético lógica(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.

Modelo básico de la arquitectura Eckert-Mauchly, en la que se basan todos los ordenadores modernos

Un ordenador con esta arquitectura realiza o emula los siguientes pasos secuencialmente:

  1. 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.
  2. Aumenta el contador de programa en la longitud de la instrucción para apuntar a la siguiente.
  3. 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.
  4. 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.
  5. Vuelve al paso 2 es decir vuelve a aumentar el contador de programa en la longitud de la instrucción para apuntar a la siguiente.

El término arquitectura de Von Neumann se acuñó a partir del memorando First Draft of a Report on the EDVAC(1945) escrito por el conocido matemático Jhon von Neumann en el que se proponía el concepto de programa almacenado. Dicho documento fue redactado en vistas a la construcción del sucesor de la computadora ENIAC y su contenido fue desarrollado por , Jhon William Mauchly, Arthur Burks y otros durante varios meses antes de que von Neumann redactara el borrador del informe. Es por ello que otros tecnólogos como David A. Patterson y John L. Hennessy promueven la sustitución de este término por el de arquitectura Eckert-Mauchly

Arquitectura de Harvard:

El término Arquitectura Harvard originalmente se refería a las arquitectura 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 Havard 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 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.


Deja un comentario