La arquitectura Harvard apareció en la universidad de Princeton y almacena el programa y los datos en memorias separadas con formatos diferentes, lo que evita cuellos de botella. Esta arquitectura crea buses separados para programa y datos que permiten leer una instrucción y datos de instrucciones previas al mismo tiempo. La arquitectura segmentada busca mejorar el desempeño dividiendo el procesador en unidades funcionales independientes que procesan instrucciones en paralelo.