Informática: ¿Cuáles son las ventajas y desventajas de la arquitectura von Neumann frente a la arquitectura de Harvard?

Estos dos son los tipos básicos de arquitectura de un microcontrolador, pero la mayoría de las veces se prefiere la arquitectura basada en Harvard.

Vamos a saber por qué …?!?

  1. Von Neumann :
  • Esto tiene un único espacio de memoria común donde se almacenan tanto las instrucciones del programa como los datos.
  • Hay un bus de datos único que obtiene datos e instrucciones.
  • El tiempo de ejecución que tarda la CPU en buscar un programa es alto.
  • La ventaja es su simplicidad y economía.

2. Harvard:

  • Las computadoras con arquitectura Harvard tienen áreas de memoria separadas para instrucciones y datos del programa.
  • Hay dos o más buses de datos internos que permiten el acceso simultáneo tanto a las instrucciones como a los datos.
  • El tiempo para la ejecución del programa es bajo.
  • Su tiempo de ejecución de alta velocidad tiene el costo de una mayor complejidad de hardware.

Eliminando las desventajas de esta arquitectura, se obtiene un tipo Harvard modificado, que se usa con frecuencia.

La ventaja clave de la arquitectura von Neumann es la flexibilidad: las instrucciones (código) y los datos pueden ocupar el mismo “depósito” de memoria. Esto significa que no tiene que comprometerse con anticipación en cuanto a cómo desea dividir la memoria limitada entre el espacio de instrucciones y el espacio de datos. Es por eso que es popular en los sistemas informáticos “grandes”, donde grande aquí significa teléfono y superior.

Las ventajas clave de la arquitectura de Harvard es que (a) permite diferentes medios para la instrucción y los datos (por ejemplo, puede poner la instrucción en ROM barata y los datos en RAM costosa (b) en sistemas sin una unidad de administración de memoria, ofrece un nivel de protección ya que no puede comenzar a ejecutar datos como código (lo que lo expone a numerosos ataques como desbordamientos del búfer, etc.) Es por eso que es popular con los sistemas integrados “pequeños”, como su microondas o un reloj.

Tenga en cuenta que en estos días, la línea entre von Neumann y Harvard se está volviendo borrosa. Por ejemplo, a pesar de que una computadora en su conjunto tiene una arquitectura von Neumann, la mayoría de las CPU de hoy en día tienen cachés de instrucciones y datos, así como protección de memoria, lo que los hace más parecidos a Harvard. Del mismo modo, los sistemas integrados a veces pueden escribir en flash, etc.

Diferencia entre la arquitectura de Harvard y la arquitectura de Von Neumann

La arquitectura de von Neumann y Harvard son arquitecturas informáticas. Describen una arquitectura de diseño para una computadora digital electrónica.

  1. La arquitectura de Harvard tiene vías físicamente separadas para instrucciones y datos.
  2. La arquitectura de von Neumann utiliza las mismas rutas físicas para las instrucciones y los datos.
  3. Tiene un conjunto dedicado de direcciones y buses de datos para leer y escribir datos en la memoria, y otro conjunto de buses de direcciones y datos para obtener instrucciones.
  4. Tiene el mismo conjunto de buses de datos y direcciones para leer / escribir en la memoria y obtener instrucciones.

Bueno, la principal ventaja de la arquitectura von Neumann en estos días es que nuestra infraestructura (líneas fabulosas) está optimizada para las máquinas von Neumann y sus partes esperadas. La principal desventaja es el cuello de botella de von Neumann. Como Ivan Sutherland señaló una vez en una conferencia, en un instante dado cuando estás usando una o dos palabras de memoria, no estás usando las otras palabras N-1 (poca eficiencia, un verdadero desperdicio; es por eso que todo el Investigaciones recientes sobre arquitecturas que no son de von Neumann (décadas recientes).

No sé lo suficiente sobre la arquitectura de Harvard en la ampliación (en realidad he visto una de las máquinas antiguas), pero es un problema intentar poner en marcha una infraestructura para competir con los productos básicos (no sería el primer intento). Básicamente es una vieja pregunta académica, y ahora pobre, económica.

El público en general pregunta: ¿Es compatible con PC?

More Interesting

¿Qué es una explicación intuitiva del mecanismo de Laplace?

¿El terminal de Windows es tan poderoso como el terminal de Linux? Si no, ¿por qué?

¿Cómo se ha desarrollado Virtual Studio?

¿Cómo utiliza Google el aprendizaje automático para identificar automáticamente videos relacionados con el extremismo y el terrorismo en YouTube?

¿Cuál sería el lenguaje óptimo que utilizarían los informáticos?

¿Qué tan serios son los revisores y los presidentes de área con refutación en una conferencia de renombre?

¿SQL alguna vez será desplazado por algo mejor?

Soy gerente de producto no técnico en una empresa de tecnología empresarial. Teniendo en cuenta que la mayoría de los puestos de PM en estos días requieren algunas habilidades técnicas, quiero obtener una mejor comprensión de los roles que juegan los ingenieros de software en las empresas tecnológicas. ¿Dónde comenzaría uno? ¿Debo familiarizarme con lenguajes de programación específicos? ¿O centrarse más en el proceso de cómo se desarrolla el software?

¿Hay alguna diferencia entre las arquitecturas de los procesadores Intel Core i3, i5 e i7?

¿Qué son los modelos gráficos probabilísticos?

¿Cuál es la mejor técnica para crear un chatbot que utiliza el aprendizaje automático?

¿Cuál es el futuro del experto en computación en la nube?

¿Qué es fácil de resolver para una computadora? ¿Qué es difícil para eso? ¿Qué es imposible?

Si el área de interés principal de uno es la teoría de la información, ¿en qué debería especializarse, a nivel de pregrado?

Finalmente, ¿falló GNU?