Vous êtes sur la page 1sur 1

En la arquitectura von Neumann, la CPU se conecta con una memoria única, donde coexisten datos e

instrucciones, a través de un mismo sistema de buses. Esto tiene 2 desventajas:


 El tamaño de los datos e instrucciones está fijado por el ancho del bus que comunica la memoria con
la CPU. Así, con un bus de 8 bits, se tendrán que manejar datos e instrucciones de una o más unidades
de 8 bits (bytes) de longitud. Si quisiéramos acceder a una instrucción o dato de más de un byte de
longitud, tendríamos que realizar más de un acceso a la memoria.
 El procesador es más lento en su respuesta, ya que no puede buscar en memoria una nueva
instrucción mientras no finalicen las transferencias de datos de la instrucción anterior, lo cual
impide superponer ambos tiempos de acceso. Osea, la CPU puede estar bien leyendo una instrucción
o leyendo/escribiendo datos desde/hacia la memoria pero ambos procesos no pueden ocurrir al
mismo tiempo, ya que las instrucciones y datos usan el mismo sistema de buses.

En la arquitectura Harvard, la memoria de instrucciones y la memoria de datos son independientes y cada


una dispone de su propio sistema de buses para el acceso. Este aislamiento y diferenciación tiene las
siguientes ventajas:
 Al tener buses separados y de diferente tamaño, la longitud de los datos y las instrucciones puede
ser distinta, al igual que el tamaño de cada memoria, debido a la diferencia de tamaño de los buses
de direcciones. Entonces, al no estar relacionados el tamaño de uno y otro, las instrucciones pueden
optimizarse para ocupar una sola posición de memoria de programa, evitando acceder más veces a
la memoria y logrando así mayor velocidad y menor longitud de programa.
 Se puede acceder en forma simultánea e independiente a la memoria de datos y a la memoria de
instrucciones, por lo que podemos completar la ejecución de una instrucción (memoria de datos), y
al mismo tiempo leer la siguiente instrucción a ejecutar (memoria de programa), logrando mayor
velocidad.

A su vez, esta organización favorece a la segmentación o “pipeline”, que aprovecha la separación de las
memorias de la arquitectura Harvard, pudiendo ejecutar una instrucción (lo que implica acceder a la
memoria de datos) mientras se busca la siguiente (en la memoria de programa). Esto permite solapar
ambas fases, permitiendo que cada instrucción se ejecute de manera efectiva en un ciclo (excepto por las de
salto que tardan dos), aumentando así el número de instrucciones ejecutadas simultáneamente en un
determinado periodo de tiempo. Si bien la duración de cada una no se reduce, si se reduce la duración del
conjunto de ellas. Esto último es a su vez, una característica importante de los procesadores RISC (una
instrucción por ciclo), por lo que dichos procesadores hacen uso de arquitectura Harvard. Por ejemplo, los
PIC16C84 que usamos en la práctica usan esta organización.

Vous aimerez peut-être aussi